java中所有的关键字都是小写的
注意main虽然被编译器识别,但是它并不是关键字
包:(名字小写)
单级包:liyi
多级包:cn.itcast
path 和classpath的区别:
path环境变量里面记录的是可执行性文件,如.exe文件,对于可执行文件现在当
前路径下去找,如果没找到就去path环境变量中配置的路径去找
classpath环境变量里记录的是java类的运行文件所在的目录。对于class文件,
先在classpath下找路径,然后再找当前路径
一定要养成先写注释后写代码的习惯。
将思想通过注释先整理出来,再用代码去实现因为代码仅仅是思想的一种体现形式而已!!!
注释除了解释说明程序之外,还能帮助我们调试程序,一点一点调试
下面是不同类型的数据的输出,包括几种进制数的输出
public class Demo { public static void main(String[] args){ //字符串常量的输出 System.out.println("hello"); //整数常量的输出(十进制) System.out.println(100); //输出100 //整数常量的输出(二进制) System.out.println(0b100);//输出4 //整数常量的输出(八进制) System.out.println(0100);//输出64 //整数常量的输出(十六进制) System.out.println(0x100);//输出256 //小数常量的输出 System.out.println(10.123); //字符常量的输出 System.out.println('0'); //布尔常量的输出 System.out.println(true); } }
java.lang.Math中的random方法会返回一个0-1.0之间的doble型的随机数(不包括1.0);
使用方法举例:
1: int magic = (int)(Math.random()*101)+100;
这句话该方法*101得到1——100之间的随机数,再加100得到100——200之间的随机数
2: 要得到1-52之间的随机数
int magic = (int)(Math.random()*53);
package demo; import java.util.Scanner; public class Demo{ public static void main(String[] args){ int magic = (int)(Math.random()*101)+100; Scanner sc = new Scanner(System.in); System.out.println("请输入你猜的数"); int guess = sc.nextInt(); while(guess != magic){ if(guess > magic){ System.out.println("错误,该数太大,请重猜"); }else{ System.out.println("错误,该数太小,请重猜"); } guess = sc.nextInt(); } System.out.println("恭喜你,答对了,该数是"+magic); } }
字符串转化为小写
package demo; import java.util.Scanner; /*字符串转化为小写*/ /*其中toLowerCase的作用是将字符串转化为小写字符串*/ public class Demo { public static void main(String[] args){ String month = ""; int monthNumber = 0; Scanner input = new Scanner(System.in); System.out.print("请输入月份:"); month = input.next(); switch(month.toLowerCase()){ case "january":monthNumber = 1; break; case "february":monthNumber = 2;break; case "march" : monthNumber = 3; break; case "april" : monthNumber = 4; break; case "may" : monthNumber = 5; break; case "june" : monthNumber = 6; break; case "july" : monthNumber = 7; break; case "August" : monthNumber = 8; break; case "september" : monthNumber = 9; break; case "october" : monthNumber = 10; break; case "november" : monthNumber = 11; break; case "december" : monthNumber = 12; break; default : monthNumber = 0; break; } if(monthNumber == 0){ System.out.println("输入的月份非法!"); }else{ System.out.println(month+"是"+monthNumber+"月份"); } } }
带标签的break的使用
这里,标签start用来标识外层的for循环,因此,这里的break start跳出了外层循环
package demo; public class Demo { public static void main(String[] args){ start: for(int i = 0; i < 3; i++){ for(int j = 0; j < 4; j++){ if(j == 2){ break start; } System.out.println(i+":"+j); } } } }
同理,带标签的continue;
public class Demo { public static void main(String[] args){ start: for(int i = 0; i < 3; i++){ for(int j = 0; j < 4; j++){ if(j == 2) continue start; System.out.println(i+":"+j); } } } }
这句话现在还不太懂:
带标签的break可用于循环结构和带标签的语句块,而带标签的continue只能用于循环结构。
综合使用带标签的continue和break;
package demo; public class Demo { public static void main(String[] args){ outer: for(int i = 0; i < 3; i++){ System.out.println("i = "+i); inner: for(int j = 0; j < 100; j++){ if(j == 20) break outer; if(j % 3 == 0) continue inner; System.out.println("j = "+j); } System.out.println("This will not be print."); } System.out.println(); System.out.println(1); } }
在C/C++语言中可以使用goto语句从内层循环跳到外层循环,但是在Java语言尽管将goto作为关键字,但不能使用,也没有意义。
下面是随机产生一张牌的程序,其中注意把一个数字编程string类型的方法:
比如:String rank = ""; get = (int)(Math.random*53); rank = "" + (get % 13+1);
这样得到的就可以把得到的数字赋给string类型的rank
package demo; public class Demo { public static void main(String[] args){ int get = (int)(Math.random()*53); String suit = "", rank = ""; switch(get/13){ case 0: suit = "黑桃"; break; case 1: suit = "红桃"; break; case 2: suit = "方块"; break; case 3: suit = "梅花"; break; } switch(get%13){ case 0: rank = "A";break; case 10: rank = "J";break; case 11: rank = "Q";break; case 12: rank = "K";break; default: rank = ""+(get % 13 + 1); } System.out.println("您抽取的牌是"+suit+rank); } }