java二进制 int_Java中的二进制到Int链接列表

我创建了一个链接列表,用于在String中存储二进制数并将其转换为单个位并存储在每个链接中。我的问题是我已经完成了所有这些,现在我正在尝试创建一个方法来取位并将其转换为整数。

问题是二进制到整数逻辑无法正常工作。

例如:如果我输入二进制值00000001,我会很好地打印我的列表0|0|0|0|0|0|0|1,但我的整数总数会回复为' 0'什么时候应该是' 1'

我的主要方法

private static Scanner input =new Scanner (System.in);

public static void main(String[] args) {

// TODO Auto-generated method stub

LinkedList LL=new LinkedList();

char c=' ';

int i=0;

int total=0;

System.out.println("Enter a 8-Bit Binary Number");

String s=input.next();

if(s.length()<8 ||s.length()>8 || s.length()<0 || s.length()==0){

System.out.println("Error");

}

while(i

c=s.charAt(i);

LL.addfromTail(new LinkData(c));

LL.BinarytoInt(new LinkData(c));

i++;

}//end while

LL.PrintList();

System.out.println();

我的LinkedList类

public class LinkedList {

Link head=null;

int total=0;

void PrintList(){//start method

Link curr=head;

while(curr!=null){//start while

System.out.print(curr.ld+"|");

curr=curr.next;

}//end while

}//end method

void addfromHead(LinkData n){//start method

Link nl=new Link(n);

if(head==null){

head=nl;

}

else{

nl.next=head;

head=nl;

}

}//end method

void addfromTail(LinkData n){

Link nl=new Link(n);

if(head==null){

head=nl;

}

else{

Link curr=head;

while(curr.next!=null){

curr=curr.next;

}

curr.next=nl;

}

}

/* int BinarytoInt(LinkData ld2){

Link curr=new Link(ld2);

curr=head;

int x=1;

while(curr.next!=null){

if(curr.ld.binarybit=='1'){

total=total+(x*1);

}

x=x*2;

curr=curr.next;

}//end while

System.out.println(total);

return total;

}

*/

/*void BinarytoInt(char c){

Link curr=head;

int value=128;

while(curr.next!=null){

if(c=='1'){

total=total+(value*1);

curr=curr.next;

}//end if

value=value/2;

}//end while

System.out.println(total);

}*/

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值