java小白学习01基础篇

本文记录了作者跟随翁恺老师Java课程的学习过程,从创建项目到基础语法,包括HelloWorld程序、Scanner的使用、变量常量、浮点数运算、循环结构、Math类功能以及字符串处理等内容,强调了C语言基础对Java学习的帮助。
摘要由CSDN通过智能技术生成

本系列用来记录自己的java自学历程,希望在日后需要时可以拿来参考,也分享给各位小伙伴!

主要跟随mooc上翁恺老师的java课程学习的。如果有c语言的基础,或者其他语言的基础,可以先看老师的ppt学习,若哪段内容有问题,再看视频即可(我居然是老老实实的看完了第一章,哈哈大概是思维的惰性)https://www.icourse163.org/learn/ZJU-1001541001?tid=1470085510#/learn/content?type=detail&id=1253333387&cid=1283613894&replay=true

  • 建立项目文件

  • 这一部分比较简单,利用file再new一下即可,类似qt,同时可以选择src来new一个类。
  • 一个简单的Hello World程序

  • System.out.println("Hello World");

    其实就一句话,很简单,类似于c或c++。

  • 这里有个快捷键可以参考Alt + / 这样可以直接补充想要的代码。

  • Scanner in = new Scanner(System.in);
    System.out.println("echo:" + in.nextLine());

    这里配合一个输入,然后返回输入的信息。

  • Scanner in = new Scanner(System.in);

  • 这句话在日后就是万金油了

  • System.out.println("2+3=" + (2+3));
    System.out.println( 2+3 + "=2+3" );

    这是一个自带回车的输出,这里注意+可以用于字符串的连接,但是有优先级的,注意上面的括号。

  • 如果想要不带回车的输出:可以利用System.out.print("……");

  • 变量与常量

  • 这一部分类似于c,注意有个新的关键字就好了:final标识常量
  • //变量赋值 int price = 0;

    //当然也可以这样赋值 int price,amount=100; 这相当于只有amount被赋值了,price没有赋值

    //常量final,常量不能再次赋值,是固定不变的

    // final int amount=100;

  • 一个简单的找钱小例子

  • System.out.print("请输入票面:");
    int amount=100;
    amount = in.nextInt();
    System.out.print("请输入金额:");
    int price=0;
    price = in.nextInt();
    System.out.println(amount + "-" + price + "=" + (amount-price));

    浮点数

  • double
  • int转换成double没有问题
  • 浮点数运算存在误差,精确的计算时需要用整数
  • 优先级:单目先算,即负号正号;算数运算符>关系运算符>赋值运算符
  • 强制类型转换:注意两个括号
  • int foot;
    foot = (int) (30/2.8);

    注意强制类型转化,只是计算了一个新值,并不会改变原数的类型和值

  • double b=0.3;
    int a = (int)b;

    比较

  • 这里和c类似,不赘述了
  • int 可以和 double 比较,但通常判断两个浮点数不行,因为浮点数的计算有误差。
  • 浮点数的判断利用Math.abs(a-b)<1e-6
  • 判断

  • 主要使用if-else来判断,或者if-else级联判断,主要注意流程图,和c类似,不赘述。
  • switch-case:break很重要,要不然就顺序执行了
  • 循环

  • while循环:当条件满足时,执行循环体里面的语句。
  • do-while循环:先执行循环体里面的语句,再判断条件。
    • do{
    • <循环体语句>
    • }while(<循环条件>); 
    • 注意最后的这个;容易省略。
  • trick1:模拟比较大的循环时,可以先模拟小循环试试。
  • trick2:整数分解:一个数%10,得到个位;一个数/10,去掉个位。
  • 循环控制

  • for(初始化;条件;单步动作)
  • {
  • }
  • trick:和的初始化变量一般为0,积的初始化变量一般为1.
  • 循环的选择:
    • 有固定循环次数的用for;
    • 必须执行一次的循环用do-while;
    • 其他的用while即可
  • 复合赋值,前缀、后缀表达式:同c
  • break,continue:break跳出循环,continue跳出本轮循环
  • 嵌套循环
  • 逻辑类型:Boolean
    • 逻辑非!,逻辑与&&,逻辑或||,优先级:非》与》或
    • 注意不能写4<5<6,要写成4<5&&5<6,易错
  • 循环的应用:
  • 数组

  • 定义数组:
    • int [ ] numbers = new int [100];
    • 针对元素个数必须是整数且必须给出,但可以是变量
  • 对数组中的元:
    • numbers[cnt] = x;
  • 数组的内部成员length可以说明数组数量,numbers.length
  • 初始化数组:
    • int[ ] b = {1,32,4};
    • int[ ] a1 = a2;
    • 注意,这样的赋值方式,改变a1的同时也会改变a2对应的值。
    • 数组之间的赋值是管理权限的赋值。
    • 因此,赋值数组必须遍历数组,进行逐一拷贝。
  • 二维数组
  • 字符

  • java使用Unicode表示字符,因此字符可以比较大小,可以通过减法比较两个字符之间的距离
  • 单个字符char: 用单引号‘a’
  • 逃逸字符不印出来
  • 包裹类型(java特别的)
  • 包裹类型比基础类型功能更广泛
  • 如Integer.MIN_VALUE,Integer.MAX_VALUE
  • Math类包括:
    • abs求绝对值,pow求幂,random得到0、1之间的随机数,round四舍五入
  • 字符串

  • 字符串是对象,是字符串的管理者。Java的字符串还是一种特殊的“不可变”对象,所有的字符串操作都是产生一个新的字符串,而不是对原来的字符串的修改。

  • 双引号括起来的0个或多个字符是一个字符串字。

  • +表示字符串的连接

  • in.next();读入一个单词,单词的标志是空格(空格、tab、换行)

  • in.nextLine();读入一整行

  • 字符串的比较:

    • 比较是否为同一个 用 ==

    • 比较内容是否相同用equals:  str1.equals("balabala");

  • ​​​​​​​字符串运算用. 操作:比较大小、获得长度、访问字符、得到子串、寻找字符等等

  • 函数

  • Java的函数必须定义在类的内部,成为类的成员。定义一个函数,要像这样写:

    <返回类型> <方法名称>(<参数表>) {

    <方法体>

    }

  • 在这个阶段,我们要在所有的函数的返回类型前面加上关键字“static”static表示这个函数属于这个类,而不属于这个类的任何对象,因此我们才可以不制造这个类的对象,而直接从main()函数中调用它。

  • 自动类型转换:char->int->double,不能自动转换时,可以利用强制转换

  • java调用函数,只能值传递

  • 本地变量:定义在函数内部的变量,作用域为大括号

写在最后:个人认为,java的基础语法与c类似,如果有c的基础,基础班java可以不学

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值