当前位置: 首页 > news >正文

韩顺平0基础学Java——第5天

p72——p86

今天同学跟我说别学java,真的吗?唉,先把这视频干完吧。

逻辑运算符练习

x=6,y=6                                x=6,y=5

x=11,y=6                                x=11,y=5

z=48 错了,是50,注意y=true是赋值!!它是真的,这一行下去后z=48,下一句又是真的,然后就是50了!!被套路了。

解释(gpt说的):

在许多编程语言中,赋值操作符(=)用于将某个值赋给变量。在条件语句中,我们通常使用比较操作符(例如==)来检查变量的值是否等于某个特定的值。

因此,当你写 if(x=false) 时,它实际上是将x赋值为false,然后判断赋值操作的结果,而不是判断x的值是否为false。因为赋值操作成功并且返回被赋的值(在这里是false),所以整个条件表达式的结果是假。

而当你写 if(x=true) 时,实际上是将x赋值为true,然后判断赋值操作的结果。因为赋值操作成功并且返回被赋的值(在这里是true),所以整个条件表达式的结果是真。

这种情况通常是不推荐的,因为它可能导致混淆。应该使用比较操作符(例如==)来检查变量的值是否等于某个特定的值,而不是使用赋值操作符(=)。

赋值运算符

复合赋值运算符会进行类型转换。例:

byte b = 2;

b += 2;//这里b=b+2,应该是个int,但是赋值给作为byte的b是编译不过去的。所以实际上,b+=2等价于b=(byte)(b+2);所以在b++时底层也有个类型转换b=(byte)(b+1)

三元运算符

条件表达式?表达式1:表达式2;

细节:表达式1和表达式2要为可以赋值给接受变量的类型(或可以自动转换)

这样不行

但是改成 int c = a > b ? (int)1.1 : (int)3.4;可以

三元运算符可以改成if—else语句。

实例:实现三个数的最大值

public class zuidazhi{public static void main(String[] args){int a,b,c;int max = a > b? (a > c? a:c):(b>c? b:c);
}}

老师:

原理:

在第二行里把max1替换成前面的表达式。

运算符的优先级

大致印象

1.()、{}等

2.单目运算++ --

3.算术运算

4.位移运算

5.比较运算

6.逻辑运算

7.三元运算

8.赋值运算

标识符的命名规则和规范

规则:必须遵守

规范:这样做更专业

1.凡是可以自己取名的地方都叫标识符

2.规则:由大小写英文字母和数字、_、$组成,数字不能开头。

                不能使用关键字和保留字,但是可以包含关键字和保留字。ps:保留字是现有java版本尚未使用,但以后版本可能会作为关键字使用。

                严格区分大小写,长度无限制

                标识符不能含空格

3.规范:包名:多单词组成时所有字母都小写

                类名、接口名:多单词组成时,所有单词首字母大写XxxYyyZzz(大驼峰)

                变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始首字母大写,如xxxYyyZzz(小驼峰)

                常量名:所有字母都大写,多单词用下划线连接XXX_YYY_ZZZ

键盘输入

Input.java,需要一个扫描器(对象),就是Scanner(是个类)

步骤:

1导入该类所在的包,java.util.*

2创建该类对象(声明变量)

3调用里面的功能

案例:可以从控制台接收用户信息,【姓名,年龄,分数】

import java.util.Scanner;//导入包和类
public class Input{public static void main(String[] args){//创建一个对象Scanner myScanner = new Scanner(System.in);//读取键盘输入System.out.println("name?");String name = myScanner.next();//读字符串System.out.println("age?");int age = myScanner.nextInt();//读整数System.out.println("score?");double score = myScanner.nextDouble();//读浮点System.out.println("name:"+name+"age:"+age+"score:"+score);
}}

http://www.lryc.cn/news/343045.html

相关文章:

  • 单片机为什么能直接烧录程序?
  • 【Linux】25. 网络基础(一)
  • 项目经理【人】任务
  • Linux学习(嵌入式硬件知识)
  • 英语学习笔记4——Is this your ...?
  • Hive Bucketed Tables 分桶表
  • 【拆位法 决策包容性 位运算】2871. 将数组分割成最多数目的子数组
  • Java 线程池 ( Thread Pool )的简单介绍
  • 鸿蒙内核源码分析(时间管理篇) | 谁是内核基本时间单位
  • 安装numpy遇到的问题
  • 页面嵌套,界面套娃,除了用iframe,还有其他方式吗?
  • 上传文件至linux服务器失败
  • 渗透 如何防御ARP欺骗,LLMNR-MDNS-NBNS等协议的作用
  • 【C++ 所有STL容器简介】
  • Django调用SECRET_KEY对数据进行加密
  • 芸众商城电商专业版400+插件源码+搭建教程
  • 【机器学习与实现】线性回归示例——波士顿房价分析
  • Redis核心数据结构——跳表(生成数据到文件和从文件中读取数据、模块合并、)
  • 微信小程序下载文件详解
  • 2024 概率论和数理统计/专业考试/本科考研/论文/重点公式考点汇总
  • 四川易点慧电子商务抖音小店:潜力无限的新零售风口
  • Seal^_^【送书活动第3期】——《Hadoop大数据分析技术》
  • win10下,svn上传.so文件失败
  • ubuntu20安装colmap
  • kubeflow简单记录
  • ARM的工作模式
  • 为家庭公网IP配置DDNS域名
  • QT-TCP通信
  • SparkSQL优化
  • STM32——基础篇