欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java初学者必看

程序员文章站 2022-03-29 17:10:10
...

Java初学者必看

         作为一名Java初学者,下面的这些一定要看哦,因为这些就是Java中最基础的,就像我们刚开始接触C语言时一样,也是从这些最基础的开始。学习就好比盖房子一样,基础一定要打好。要不然盖得房子就是危房。


1. 如何比较两个字符串(equals()函数)


  1. String favorite="piano";//表示最喜欢的乐曲是piano  
  2. String guess="guitar";//猜测喜欢的是guitar  
  3. System.out.println("Is Add 'favourie instrument a"+guess+"?");  
  4. System.out.println("Answer:"+favorite.equals(guess));// favorite.equals(guess)比较favorite  
String favorite="piano";//表示最喜欢的乐曲是piano
String guess="guitar";//猜测喜欢的是guitar
System.out.println("Is Add 'favourie instrument a"+guess+"?");
System.out.println("Answer:"+favorite.equals(guess));// favorite.equals(guess)比较favorite



是否与guess相同,相同则返回true,不相同则返回false
//若大小写不一样,则equal()也返回false

关于字符串的就在这多说一下,比如char,
char a,b; 每个字符变量被分配一个字节的内存空间,因此只能存放一个字符。字符值是以ASCII码的形式存放在变量的内存单元之中的。如x的
十进制ASCII码是120,y的十进制ASCII码是121。对字符变量a,b赋予'x'和'y'值: a='x';b='y';实际上是在a,b两个单元内存放120和121的二进制代码: a 0 1 1 1 1 0 0 0
b 0 1 1 1 1 0 0 1所以也可以把它们看成是整型量。在程序中使用字符值时,必须用单引号将赋给变量的字符值括起来,而对于字符串必须用双引号括起来。如:

  1. char name=’a’;  
  2. String name=”wangheng”;  
char name=’a’;
String name=”wangheng”;



2.如何确定两个字符串的长度(length()函数)

  1. String name="wang heng";//定义了一个字符串name,赋值为wang heng  
  2. int nameLength=name.length();//定义整型变量nameLength,将name的长度赋给了它  
  3. System.out.println(nameLength);//输出nameLength,此处输出为9(中间的空格也占一个)  
String name="wang heng";//定义了一个字符串name,赋值为wang heng
int nameLength=name.length();//定义整型变量nameLength,将name的长度赋给了它
System.out.println(nameLength);//输出nameLength,此处输出为9(中间的空格也占一个)



3.如何查找字符串(indexof()函数(index英文意思是指针,索引,在这里可以这样记 如果知道了 …的指针,就可以根据指针查找到它))没有找到返回-1(并不是0),找到返回一个整数,这一点需注意。

  1. String name="wang heng is a good boy";  
  2. int position=name.indexOf("wang");  
  3. if(position==-1)  
  4. System.out.println("no");  
  5. else   
  6. System.out.println("find");  
String name="wang heng is a good boy";
int position=name.indexOf("wang");
if(position==-1)
System.out.println("no");
else 
System.out.println("find");



4.如何改变字符串的大小写(toLowerCase()(转换小写)toUpperCase()(转换大写))


  1. String myname="wangheng";  
  2. String myname2=myname.toUpperCase();//将小写转换成大写 System.out.println(myname2);  
  3. toLowerCase()与toUpperCase()用法一样  
String myname="wangheng";
String myname2=myname.toUpperCase();//将小写转换成大写 System.out.println(myname2);
toLowerCase()与toUpperCase()用法一样



5,三目运算符(?)(有的地方称作三元运算符)

三目运算符可以说是Java中最复杂的条件语句吧。如果我们想根据条测试件的结果进行赋值或显示,也就是说测试的结果不同,我们的赋值就不一样,这个时候我们就可以应用三目运算符了。在大多数情况下,if—else语句也可以和三目运算符互换,一般情况下都使用if—else语句。


  1. int a=4,b=3;  
  2. int result=(a>=b)?(a-b):(b-a);  
  3. System.out.println(result);//为了少敲代码,也可以这样写System.out.println((a>=b)?(a-b):(b-a);  
  4. //若a>=b为真,则result赋值为a-b;否则result赋值为(b-a);  
int a=4,b=3;
int result=(a>=b)?(a-b):(b-a);
System.out.println(result);//为了少敲代码,也可以这样写System.out.println((a>=b)?(a-b):(b-a);
//若a>=b为真,则result赋值为a-b;否则result赋值为(b-a);


用if—else也可以这样写


  1. if(a>=b)  
  2. result=a-b;  
  3. else  
  4. result=b-a;  
  5. System.out.println(result);  
if(a>=b)
result=a-b;
else
result=b-a;
System.out.println(result);



6,循环语句

① for循环
for循环在Java中也是一个比较复杂的循环语句,不过,如果你之前做过C,C++的话,那么这些就简单了,因为在Java中的for循环以及下面提到的while循环和do—while循环都和C,C++中的用法差不多一样,下面也会提到一些不同点。一个与循环相关的不常见的术语是迭代,指的是执行单词的循环,用于控制循环的计数器变量就是迭代。
for循环的格式是
for( 条件1;条件2 条件3; )
括号里面的两个分号不可以省略,条件1,条件2,条件3可以不写,而且每一个条件都可以报括不知一个变量。如下:


  1. int i,j;  
  2. for(i=0,j=0;i*j<100;i++,j+=5)  
  3. System.out.println(i+"*"+j+"="+(i*j));  
int i,j;
for(i=0,j=0;i*j<100;i++,j+=5)
System.out.println(i+"*"+j+"="+(i*j));



比如一个求100以内所有8的倍数


  1. for(int a=0;a<=100;a++)//在C,C++不允许在这里定义并赋值变量a,它们需要在使用变量之前就要定义变量  
  2. {  
  3. if(a%8==0)//取余为0则为真  
  4. System.out.print(a+" ");  
  5. }  
for(int a=0;a<=100;a++)//在C,C++不允许在这里定义并赋值变量a,它们需要在使用变量之前就要定义变量
{
if(a%8==0)//取余为0则为真
System.out.print(a+" ");
}



② while循环

while循环只需要一个判断条件,并不需要像for循环那样有多个不同的组成部分。while在开始执行的时候就立即测试条件,若测试条件为fault,则不会执行循环体中的语句,这一点和if语句类似。

就拿上面的那个例子来说吧,用while循环可以这样来写


  1. int a=0;  
  2. while(a<=100)  
  3. {  
  4. if(a%8==0)  
  5. System.out.print(a+" ");  
  6. a++;  
  7. }  
int a=0;
while(a<=100)
{
if(a%8==0)
System.out.print(a+" ");
a++;
}


③ do—while循环

do—while循环与while循环的功能类似,但有一个明显不同,那就是测试条件的地方不同。

先来看一个简单的例子:


  1. int a=0;  
  2. do{  
  3. if(a%8==0)  
  4. System.out.print(a+" ");  
  5. a++;  
  6. }while(a<=100);  
int a=0;
do{
if(a%8==0)
System.out.print(a+" ");
a++;
}while(a<=100);


由这个例子大家可以看到do—while在执行时,先执行循环体,再测试条件。也就是条件无论是fault还是true,都会执行一次循环体,也就是说在无论什么条件下,do—while循环至少执行一次。当为fault是跳出循环,为true则继续执行do—while循环。


7.退出循环

退出循环的正常途径就是指测试条件为fault,另外,我们还可以用break语句来退出循环。


  1. int a=0;  
  2. do{  
  3. if(a%8==0)  
  4. System.out.print(a+" ");  
  5. a++;  
  6. if(a==16)  
  7. break;  
  8. }while(a<=100);  
int a=0;
do{
if(a%8==0)
System.out.print(a+" ");
a++;
if(a==16)
break;
}while(a<=100);


这段代码中,当a=16时,就会自动退出循环。
当循环嵌套时,比如下面这个例子,你想一下在跳出两个循环,有一种简单方法,就可以使用外层循环命名。

  1. </pre><pre name="code" class="java">int a=0;  
  2. int b=40;  
  3. bLoop: //给外层循环命名  
  4. while(b<50)  
  5. {  
  6. for(int i=0;i<b;i++)  
  7. if(a>20)  
  8. break bLoop;//这里,不用在bLoop后面加冒号  
  9. a=a+1;  
  10. System.out.println(a);  
  11. }  
</pre><pre name="code" class="java">int a=0;
int b=40;
bLoop: //给外层循环命名
while(b<50)
{
for(int i=0;i<b;i++)
if(a>20)
break bLoop;//这里,不用在bLoop后面加冒号
a=a+1;
System.out.println(a);
}


注意:要使用循环命名,就必须将名称放在循环起始位置,并在后面加‘:’。

当然你也可以用两个break来跳出循环。


  1. int a=0;  
  2. int b=40;  
  3. bLoop:  
  4. while(b<50)  
  5. {  
  6. for(int i=0;i<b;i++)  
  7. if(a>20)  
  8. break;  
  9. a=a+1;  
  10. System.out.println(a);  
  11. break;  
  12. }  
int a=0;
int b=40;
bLoop:
while(b<50)
{
for(int i=0;i<b;i++)
if(a>20)
break;
a=a+1;
System.out.println(a);
break;
}


如果循环嵌套太多了的话,每一层用一个break,也太麻烦了。第一种方法还是很方便的。


         作为一名Java初学者,下面的这些一定要看哦,因为这些就是Java中最基础的,就像我们刚开始接触C语言时一样,也是从这些最基础的开始。学习就好比盖房子一样,基础一定要打好。要不然盖得房子就是危房。


1. 如何比较两个字符串(equals()函数)


  1. String favorite="piano";//表示最喜欢的乐曲是piano  
  2. String guess="guitar";//猜测喜欢的是guitar  
  3. System.out.println("Is Add 'favourie instrument a"+guess+"?");  
  4. System.out.println("Answer:"+favorite.equals(guess));// favorite.equals(guess)比较favorite  
String favorite="piano";//表示最喜欢的乐曲是piano
String guess="guitar";//猜测喜欢的是guitar
System.out.println("Is Add 'favourie instrument a"+guess+"?");
System.out.println("Answer:"+favorite.equals(guess));// favorite.equals(guess)比较favorite



是否与guess相同,相同则返回true,不相同则返回false
//若大小写不一样,则equal()也返回false

关于字符串的就在这多说一下,比如char,
char a,b; 每个字符变量被分配一个字节的内存空间,因此只能存放一个字符。字符值是以ASCII码的形式存放在变量的内存单元之中的。如x的
十进制ASCII码是120,y的十进制ASCII码是121。对字符变量a,b赋予'x'和'y'值: a='x';b='y';实际上是在a,b两个单元内存放120和121的二进制代码: a 0 1 1 1 1 0 0 0
b 0 1 1 1 1 0 0 1所以也可以把它们看成是整型量。在程序中使用字符值时,必须用单引号将赋给变量的字符值括起来,而对于字符串必须用双引号括起来。如:

  1. char name=’a’;  
  2. String name=”wangheng”;  
char name=’a’;
String name=”wangheng”;



2.如何确定两个字符串的长度(length()函数)

  1. String name="wang heng";//定义了一个字符串name,赋值为wang heng  
  2. int nameLength=name.length();//定义整型变量nameLength,将name的长度赋给了它  
  3. System.out.println(nameLength);//输出nameLength,此处输出为9(中间的空格也占一个)  
String name="wang heng";//定义了一个字符串name,赋值为wang heng
int nameLength=name.length();//定义整型变量nameLength,将name的长度赋给了它
System.out.println(nameLength);//输出nameLength,此处输出为9(中间的空格也占一个)



3.如何查找字符串(indexof()函数(index英文意思是指针,索引,在这里可以这样记 如果知道了 …的指针,就可以根据指针查找到它))没有找到返回-1(并不是0),找到返回一个整数,这一点需注意。

  1. String name="wang heng is a good boy";  
  2. int position=name.indexOf("wang");  
  3. if(position==-1)  
  4. System.out.println("no");  
  5. else   
  6. System.out.println("find");  
String name="wang heng is a good boy";
int position=name.indexOf("wang");
if(position==-1)
System.out.println("no");
else 
System.out.println("find");



4.如何改变字符串的大小写(toLowerCase()(转换小写)toUpperCase()(转换大写))


  1. String myname="wangheng";  
  2. String myname2=myname.toUpperCase();//将小写转换成大写 System.out.println(myname2);  
  3. toLowerCase()与toUpperCase()用法一样  
String myname="wangheng";
String myname2=myname.toUpperCase();//将小写转换成大写 System.out.println(myname2);
toLowerCase()与toUpperCase()用法一样



5,三目运算符(?)(有的地方称作三元运算符)

三目运算符可以说是Java中最复杂的条件语句吧。如果我们想根据条测试件的结果进行赋值或显示,也就是说测试的结果不同,我们的赋值就不一样,这个时候我们就可以应用三目运算符了。在大多数情况下,if—else语句也可以和三目运算符互换,一般情况下都使用if—else语句。


  1. int a=4,b=3;  
  2. int result=(a>=b)?(a-b):(b-a);  
  3. System.out.println(result);//为了少敲代码,也可以这样写System.out.println((a>=b)?(a-b):(b-a);  
  4. //若a>=b为真,则result赋值为a-b;否则result赋值为(b-a);  
int a=4,b=3;
int result=(a>=b)?(a-b):(b-a);
System.out.println(result);//为了少敲代码,也可以这样写System.out.println((a>=b)?(a-b):(b-a);
//若a>=b为真,则result赋值为a-b;否则result赋值为(b-a);


用if—else也可以这样写


  1. if(a>=b)  
  2. result=a-b;  
  3. else  
  4. result=b-a;  
  5. System.out.println(result);  
if(a>=b)
result=a-b;
else
result=b-a;
System.out.println(result);



6,循环语句

① for循环
for循环在Java中也是一个比较复杂的循环语句,不过,如果你之前做过C,C++的话,那么这些就简单了,因为在Java中的for循环以及下面提到的while循环和do—while循环都和C,C++中的用法差不多一样,下面也会提到一些不同点。一个与循环相关的不常见的术语是迭代,指的是执行单词的循环,用于控制循环的计数器变量就是迭代。
for循环的格式是
for( 条件1;条件2 条件3; )
括号里面的两个分号不可以省略,条件1,条件2,条件3可以不写,而且每一个条件都可以报括不知一个变量。如下:


  1. int i,j;  
  2. for(i=0,j=0;i*j<100;i++,j+=5)  
  3. System.out.println(i+"*"+j+"="+(i*j));  
int i,j;
for(i=0,j=0;i*j<100;i++,j+=5)
System.out.println(i+"*"+j+"="+(i*j));



比如一个求100以内所有8的倍数


  1. for(int a=0;a<=100;a++)//在C,C++不允许在这里定义并赋值变量a,它们需要在使用变量之前就要定义变量  
  2. {  
  3. if(a%8==0)//取余为0则为真  
  4. System.out.print(a+" ");  
  5. }  
for(int a=0;a<=100;a++)//在C,C++不允许在这里定义并赋值变量a,它们需要在使用变量之前就要定义变量
{
if(a%8==0)//取余为0则为真
System.out.print(a+" ");
}



② while循环

while循环只需要一个判断条件,并不需要像for循环那样有多个不同的组成部分。while在开始执行的时候就立即测试条件,若测试条件为fault,则不会执行循环体中的语句,这一点和if语句类似。

就拿上面的那个例子来说吧,用while循环可以这样来写


  1. int a=0;  
  2. while(a<=100)  
  3. {  
  4. if(a%8==0)  
  5. System.out.print(a+" ");  
  6. a++;  
  7. }  
int a=0;
while(a<=100)
{
if(a%8==0)
System.out.print(a+" ");
a++;
}


③ do—while循环

do—while循环与while循环的功能类似,但有一个明显不同,那就是测试条件的地方不同。

先来看一个简单的例子:


  1. int a=0;  
  2. do{  
  3. if(a%8==0)  
  4. System.out.print(a+" ");  
  5. a++;  
  6. }while(a<=100);  
int a=0;
do{
if(a%8==0)
System.out.print(a+" ");
a++;
}while(a<=100);


由这个例子大家可以看到do—while在执行时,先执行循环体,再测试条件。也就是条件无论是fault还是true,都会执行一次循环体,也就是说在无论什么条件下,do—while循环至少执行一次。当为fault是跳出循环,为true则继续执行do—while循环。


7.退出循环

退出循环的正常途径就是指测试条件为fault,另外,我们还可以用break语句来退出循环。


  1. int a=0;  
  2. do{  
  3. if(a%8==0)  
  4. System.out.print(a+" ");  
  5. a++;  
  6. if(a==16)  
  7. break;  
  8. }while(a<=100);  
int a=0;
do{
if(a%8==0)
System.out.print(a+" ");
a++;
if(a==16)
break;
}while(a<=100);


这段代码中,当a=16时,就会自动退出循环。
当循环嵌套时,比如下面这个例子,你想一下在跳出两个循环,有一种简单方法,就可以使用外层循环命名。

  1. </pre><pre name="code" class="java">int a=0;  
  2. int b=40;  
  3. bLoop: //给外层循环命名  
  4. while(b<50)  
  5. {  
  6. for(int i=0;i<b;i++)  
  7. if(a>20)  
  8. break bLoop;//这里,不用在bLoop后面加冒号  
  9. a=a+1;  
  10. System.out.println(a);  
  11. }  
</pre><pre name="code" class="java">int a=0;
int b=40;
bLoop: //给外层循环命名
while(b<50)
{
for(int i=0;i<b;i++)
if(a>20)
break bLoop;//这里,不用在bLoop后面加冒号
a=a+1;
System.out.println(a);
}


注意:要使用循环命名,就必须将名称放在循环起始位置,并在后面加‘:’。

当然你也可以用两个break来跳出循环。


  1. int a=0;  
  2. int b=40;  
  3. bLoop:  
  4. while(b<50)  
  5. {  
  6. for(int i=0;i<b;i++)  
  7. if(a>20)  
  8. break;  
  9. a=a+1;  
  10. System.out.println(a);  
  11. break;  
  12. }  
int a=0;
int b=40;
bLoop:
while(b<50)
{
for(int i=0;i<b;i++)
if(a>20)
break;
a=a+1;
System.out.println(a);
break;
}


如果循环嵌套太多了的话,每一层用一个break,也太麻烦了。第一种方法还是很方便的。