/*强制在dos命令中停下代码运行*/
快捷键ctrl+c
/*while与do while的区别*/
class Q1
{
public static void main(String[] args)
{
int x=1;
do
{
System.out.println("阿秋是天才:"+x); //最终打印出来的值为1,因为对于do来说无论while的范围为多少,它内部的代码始终会执行一次。
x++;
}
while (x<1);
}
}
class Q1
{
public static void main(String[] args)
{
int x=1;
while (x<1)
{
System.out.println("阿秋是天才:"+x); //打印结果为空,因为在while的判断中,就已经无法往下执行了
x++;
}
}
}
/*for循环中的其他特点*/
1.
class Q1
{
public static void main(String[] args)
{
int x=1;
for (System.out.println("a");x<3 ;System.out.println("c") )//for循环中的第二栏是boolean类型的式子,必须是判断类型的要么为true or false
{
System.out.println("d");
x++;
}
}
}
//a,d,c,d,c
2.
for(int x=1;x<3;x++,y++)//从中可以看出第三栏当定义条件很多时,用逗号隔开加在后面
/*练习*/
/*获取1~10的和并打印*/
class Q1
{
public static void main(String[] args)
{
int sum=0;
for (int x=1;x<11;x++ )
{
sum+=x;
}
System.out.println(sum);
}
}
/*1~100之间7的倍数的数,并打印,数出个数*/
class Q1
{
public static void main(String[] args)
{
int x=1,m=0;
for (;x<=100 ;x++ )
{
if(x%7==0)
{
m++;
System.out.println("第"+m+"个数是:"+x);
}
}
System.out.println("能被7整除的整数是"+m+"个");
}
}
/*break和continue的区别*/
例一:
class Q1 {
public static void main(String args[]) {
System.out.println("循环没有开始");
System.out.println("现在开始测试continue");
for (int i = 0; i < 3; i++) {
System.out.println("开始第" + i + "次for循环");
if (i == 1) {
continue; //当程序运行到continue时,程序会返回到for循环最开始的地方继续循环,但会跳出
} //满足条件continue之后的语句,可是优点就是又不会打断程序的继续运行。
System.out.println("看看continue后这里执行了吗?");
}
System.out.println("continue测试完毕\n***********************");
System.out.println("现在开始测试break");
for (int i = 0; i < 3; i++) {
System.out.println("开始第" + i + "次for循环");
if (i == 1){
break; //当程序运行到break时,程序既不会返回到for循环最开始的地方并且会将程序
} //终止,后面的语句也无法执行。
System.out.println("看看break后这里执行了吗?");
}
System.out.println("break测试完毕\n***********************");
}//continue和break的相同点:都是不再执行之后的语句,但是continue会返回到for循环开始的地方,而break则直接停止。
}
例二:
class Q1
{
public static void main(String[] args)
{
for(int x=0;x<3;x++)
{
for(int y=0;y<3;y++)
{
System.out.println(x);
break; //跳出内循环,但是外循环仍然有效,如果外循环无break则结果为0,1,2
}
break; //跳出外循环,若无内循环则结果为0,0,0
}
}
}
/*语句嵌套形式*/
/*九九乘法表*/
class Q1
{
public static void main(String[] args)
{
for (int i=1;i<10 ;i++ )
{
for (int j=1;j<=i ;j++ )
{
System.out.print(j+"*"+i+"="+i*j+"\t"); //制表符"\t"能让乘法表变得更整齐
}
System.out.println(); //直接打印代表换行
}
}
}
/*打印 ****
****
****
*/
class Q1
{
public static void main(String[] args)
{
for (int x=1;x<4 ;x++ )
{
for (int y=1;y<5 ;y++ )
{
System.out.print("*");
}
System.out.println();
}
}
}
/*
打印*****
****
***
**
*
*
**
***
****
*****
*/
class Q1
{
public static void main(String[] args)
{
for (int x=1;x<6 ;x++ )
{
for (int y=1;y<7-x ;y++ )
{
System.out.print("*");
}
System.out.println();
}
System.out.println();
for (int x=1;x<6 ;x++ )
{
for (int y=1;y<x+1 ;y++ )
{
System.out.print("*");
}
System.out.println();
}
System.out.println();
}
}
/*习题
----*
---* *
--* * *
-* * * *
*/
class Q1
{
public static void main(String[] args)
{
for (int x=1;x<5 ;x++ )
{
for (int y=1;y<6-x ;y++)
{
System.out.print("-");
}
for (int y=1;y<x+1 ;y++ )
{
System.out.print("* ");//在外循环内部假如多个内循环会使行的宽度按照自己的设定累加。
}
System.out.println();
}
}
}
/*主函数内的函数*/
因为主函数为public static void main(String[] args)中的静态static修饰,那么主函数内部的函数均要用static修饰
常用的修饰符为public static
/*判断2个数是否相同*/
class Q1
{
public static void main(String[] args)
{
System.out.println(Q1.answer(3,3)); //可以将Q1.去掉
}
public static boolean answer(int a,int b)
{
return a==b; //最简单的写法
}
}
/*练习:设定功能,打印一个矩形*/
class Q1
{
public static void main(String[] args)
{
Q1.getJX(13,31);
}
public static void getJX(int x,int y)
{
for (int a=0;a<x ;a++ )
{
for (int b=0;b<y ;b++ )
{
System.out.print("*");
}
System.out.println();
}
}
}
/*定义一个打印99乘法表的函数*/
class Q1
{
public static void main(String[] args)
{
Q1.printNine();
}
public static void printNine()
{
for (int i=1;i<10 ;i++ )
{
for (int j=1;j<i+1 ;j++ )
{
System.out.print(j+"*"+i+"="+j*i+"\t");
}
System.out.println();
}
}
}
/*overload重载*/
重载定义:前提是同一个类中,同名函数
重载只和参数列表有关系,参数个数,参数类型,参数顺序,与返回值类型无关。
重载的意义:使有意义的函数名保留其功能,只是参数不一样而已,减少函数名。
/*面试题*/
void show(int a,char b,double c){};//下面与此相同的语句是:
1.void show(int c,char a,double c){};//答案:是没有重载,原理是函数名相同,参数类型,参数个数,参数顺序不同,参数名不同无影响。
2.double show(int c,char a,double c){};//答案是不存在这种情况,系统会报错,这种不能与原函数同时存在于一个类中,jvm是无法识别的。
|
|