public void deleteSmaller(int data){
    System.out.printf("Deleting data smaller than %d",data);
    System.out.println("");
    dNode current = head;
    dNode lastCurrent;
    lastCurrent = head.Previous;
    dNode nextCurrent = current.Next;
    while(current!= null){
        
        if(data>=current.data){
            if(current.Previous == null){
               nextCurrent.setPrevious(null);
            }else{
            lastCurrent.setNext(nextCurrent);
            nextCurrent.setPrevious(lastCurrent);
            
           }
        }
       current=current.getNext();
       lastCurrent=current.Previous;
       nextCurrent=current.Next;
    }
}
I want to delete data of all the nodes smaller than the given data but it keeps throwing null pointer exception.
The question got closed but i tried it myself updated it and now it is working fine .The code below works just fine.
public void deleteSmaller(int data){
    System.out.printf("Deleting data smaller than %d",data);
    System.out.println("");
    dNode current = head;
    dNode lastCurrent=null,nextCurrent=current.Next ;
    while(current.Next!= null){
        
        if(data>=current.data){
            if(current.Previous == null){
               nextCurrent.setPrevious(null);
            }else{
            lastCurrent.setNext(nextCurrent);
            nextCurrent.setPrevious(lastCurrent);
            
            }
        }
       current=current.getNext();
       lastCurrent=current.Previous;
       nextCurrent=current.Next;
    }
}
 
     
    