学习途径:bilibili阿婆主遇见狂神说 Java学习完整路线,强烈建议收藏转发 按讲课顺序写下来的,先顺一遍基础 师范的计科老学些有的没的,我是采集学不好,班主任也说了学校教的不足以支持我们进行开发创造,所以还带我们做了编程比赛,话说题目还没拿出来><,等出题了会另开博客去记录,不过第一场应该会依据我们学的C#,Java按课程安排来看的话是大三才教的。
Ctrl+S:保存 Ctrl+Shift+Esc:打开任务管理器 explorer桌面运行任务 Alt+F4:关闭窗口 Alt+Table:切换运行窗口
1.WIN+R输入cmd回车 2.资源管理的地址栏输入cmd,直接在指定路径下了 3.Shift+右键打开Powershell 4.Windows任务栏里找
路径下cmd 编译javac Hello.java(避免中文路径)会生成class文件 运行java Hello(不用后缀名) 注意:Java大小写敏感,尽量使用英文,文件名和类名必须保证一致,命名规范,结尾英文分号
欲工善其事先利其器 集成开发环境智能报错比直接记事本敲 好
换背景Ctrl+Alt+A搜索background
书写注释是一个非常重要且良好的习惯,还有写博客记录学习过程也是 //单行注释 /* 多行注释 */ /**JavaDoc:文档注释 */是有功能的,可以加参数 ,例:@Author @Description
标识符 符合规范提高可读性
Java的变量要严格符合规定,所有变量都要先定义再使用 ->安全性高 避免浮点数进行比较 <<:左移相当于 * 2,但是用位运算效率极高 >>:同理右移相当于 / 2 其他都不多赘述
为了更好地组织类,Java提供了包机制 包的本质就是文件夹,用于区别类名的命名空间 包语句的语法格式:package pkg[. pkg[. pkg3...]];
javadoc -encoding UTF-8 -charset UTF-8 Doc.java 即javadoc (参数) Java文件
Java提供的工具类 java.util.Scanner 可以使用Scanner类获取用户输入
next()方法的使用: next不能得到带有空格的字符串 public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入:"); //hasNext()判断有没有输入字符串,此处其实不必要判断 if(scanner.hasNext()){ //使用next()方法接收 String str = scanner.next();//等待用户输入 System.out.println("输出内容为:"+str); } //IO类流的不关闭会一直占用资源,养成及时关掉的好习惯 scanner.close(); } nextLine()方法的使用: public static void main(String[] args) { //从键盘接收数据 Scanner scanner = new Scanner(System.in); System.out.println("请输入数据:"); String str = scanner.nextLine(); System.out.println("输出:"+str); scanner.close(); } 输入其他数据类型: public static void main(String[] args) { Scanner scanner = new Scanner(System.in);//接收键盘输入 int i = 0; float f = 0.0f; System.out.println("请输入整数:"); if (scanner.hasNextInt()) { i = scanner.nextInt(); System.out.println("整数数据:" + i); } else { System.out.println("不是整数输入"); } System.out.println("请输入小数:"); if (scanner.hasNextFloat()) { f = scanner.nextFloat();//等待用户输入 System.out.println("小数数据:" + f); } else { System.out.println("不是小数输入"); } scanner.close(); }鼠标停在类名上Ctrl+左键查看源码,Structure中找函数 注意各方法的作用域,以及大小写
nextDouble()小应用: public class Demo03 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入:"); double sum = 0; double m = 0; //输入不为double类型时推出循环 while (scanner.hasNextDouble()){ double x= scanner.nextDouble(); m=m+1; sum=sum+x; System.out.println("你输入了第"+m+"个数据,然后当前结果sum="+sum); } System.out.println(m+"个数的和为"+sum); System.out.println(m+"个数的平均数是"+(sum /m)); scanner.close(); } } 增强for循环 public static void main(String[] args) { int[] numbers ={10,20,30,40,50}; for(int x:numbers) { System.out.println(x); } }运行效果
Java的方法 类似于其他语言的函数,是一段用来完成特定功能的代码片段。
就是在一个类中,有相同的函数名称,但形参不同的函数。
有时候希望运行一个程序时候在传递给它消息。这要靠传递命令行参数给main()函数实现。
public class Demo02 { public static void main(String[] args) { // args.length 数组长度 for (int i = 0; i < args.length; i++) { System.out.println("args[" + i + "]:" + args[i]); } } }JDK1.5开始,Java支持传递同类型的可变参数给一个方法; 在方法声明中,在指定参数类型后加一个省略号(…); 一个方法中只能指定一个可变参数,它必须是方法的最后一个参数,任何普通的参数必须在它之前声明。
思路推荐也很清楚跟着写下来就行了。
public class Test01 { public static void main(String[] args) { Scanner scanner=new Scanner(System.in); System.out.println("输入1开始运算,输入2结束运算"); int selection=scanner.nextInt(); while (selection==1) { System.out.println("请输入第一个数字:"); double num1=scanner.nextDouble(); System.out.println("请输入第二个数字:"); double num2 =scanner.nextDouble(); System.out.println("请输入运算符(+、-、*、/):"); String operator=scanner.next(); switch (operator){ case "+": System.out.println("运算结果为:"+add(num1,num2)); break; case "-": System.out.println("运算结果为:"+subtraction(num1,num2)); break; case "*": System.out.println("运算结果为:"+multiplication(num1,num2)); break; case "/": System.out.println("运算结果为:"+division(num1,num2)); break; } System.out.println("输入1开始运算,输入2结束运算"); selection=scanner.nextInt(); } if(selection==2) { System.out.println("结束运算!"); } } public static double add(double num1,double num2) { return num1+num2; } public static double subtraction(double num1,double num2){ return num1-num2; } public static double multiplication(double num1,double num2){ return num1*num2; } public static double division(double num1,double num2){ return num1/num2; } }