Java的从浅至深绕坑而行的学习

 1 package day02;
 2 /**
 3  * 1:java初学习,避免面试时一些HR挖的坑。
 4  * @author biexiansheng
 5  *
 6  */
 7 public class Test02 {
 8 
 9     public static void main(String[] args) {
10         // ctrl+shift+f自動排版
11         int a=120;
12         byte b=9;
13         b=(byte)(a+b);//需要强制类型转换
14         System.out.println("b="+b);
15         
16         System.out.println('a'+1);
17         System.out.println('A'+1);
18         System.out.println("hello"+'a'+1);
19         //任何数据类型加字符串等于字符串
20         System.out.println('a'+1+"hello");
21         System.out.println("hello"+1+'a');
22         
23     }
24 
25 }

运行结果:

b=-127 98 66 helloa1 98hello hello1a

 1 package day02;
 2 
 3 /**
 4  * 1:java初学习,避免面试时一些HR挖的坑。
 5  * 
 6  * @author biexiansheng
 7  *
 8  */
 9 public class Test02 {
10 
11     public static void main(String[] args) {
12         // ctrl+shift+f自動排版
13         //b1,b2时两个变量,变量里面存储的值都是变化的,所以在程序运行中jvm是无法判断里面具体的值
14         //byte类型的变量在进行运算的时候,会自动转换为int类型
15         byte b1=3;
16         byte b2=4;                    //'0'--48 'a'--97 'A'--65
17         //byte b3=b1+b2;报错    
18         //byte b3=(byte)(b1+b2);ok
19         byte b4=3+4;
20         //byte short char ->int->long
21     
22     }
23 
24 }
 1 package day02;
 2 
 3 /**
 4  * 1:java初学习,避免面试时一些HR挖的坑。
 5  * 
 6  * @author biexiansheng
 7  *
 8  */
 9 public class Test02 {
10 
11     public static void main(String[] args) {
12         // ctrl+shift+f自動排版
13         System.out.println(10/3);
14         System.out.println(10/3.0);
15         System.out.println(10*3.0);
16         System.out.println("3+4="+3+4);
17         //+号代表第一加号,第二连接,第三代表正数。
18         int a=3;
19         System.out.println("a++="+(a++));//先输出再++
20         System.out.println("a="+a);//输出上面的++后面的值
21         System.out.println("++a="+(++a));
22         int b=3;
23         int c;
24         c=b++;//后++,先使用再++
25         //c=++b;先++,先++后使用
26         System.out.println("b="+b);
27         System.out.println("c="+c);
28         
29         
30     }
31 
32 }
 1 package day02;
 2 
 3 /**
 4  * 1:java初学习,避免面试时一些HR挖的坑。
 5  * 
 6  * @author biexiansheng
 7  *
 8  */
 9 public class Test02 {
10 
11     public static void main(String[] args) {
12         // ctrl+shift+f自動排版
13         int a = 4;
14         int b =(a++)+(++a)+(a+10);
15         //a 5 6  
16         //b 4+6+6+10
17         System.out.println("a="+a);
18         System.out.println("b="+b);
19         
20         
21         int c = 4;
22         int d = (--c)+(c--)+(c*10);
23         //c 3 2
24         //d 3+3+20
25         System.out.println("c="+c);
26         System.out.println("d="+d);
27         
28         
29     }
30 
31 }

答案:

a=6 b=26 c=2 d=26

 1 package day02;
 2 
 3 /**
 4  * 1:java初学习,避免面试时一些HR挖的坑。
 5  * 
 6  * @author biexiansheng
 7  *
 8  */
 9 public class Test02 {
10 
11     public static void main(String[] args) {
12         // ctrl+shift+f自動排版
13         byte a=3;
14         a++;
15         System.out.println("a="+a);//先使用再++
16         //System.out.println("a++="+(a++));
17         a=(byte)(a+1);//byte类型自动转换为int类型的,所以需要强制转换一下。
18         System.out.println("a="+a);
19         
20         short s=1;
21         s=(short)(s+1);
22         short s1=2;//这是坑,面试的坑
23         s1+=1;//<==>s1=(short)(s1+1);
24         
25     }
26 
27 }
 1 package day02;
 2 
 3 /**
 4  * 1:java初学习,避免面试时一些HR挖的坑。
 5  * 
 6  * @author biexiansheng
 7  *
 8  */
 9 public class Test02 {
10 
11     public static void main(String[] args) {
12         // ctrl+shift+f自動排版
13         int a=10;
14         int b=20;
15         int c=30;
16         System.out.println(a>b & a>c);//false false flase
17         System.out.println(a<b & a<c);//true true ture
18         System.out.println(a<b & a>c);//true false false
19         System.out.println(a>b & a<c);//false true flase
20         System.out.println("------------");
21         System.out.println(a>b | a>c);//false false false
22         System.out.println(a<b | a<c);//true true true
23         System.out.println(a>b | a<c);//false true true
24         System.out.println(a<b | a>c);//true false true
25         System.out.println("----------");
26         //相同为false,不同为true;逻辑异或
27         System.out.println(a>b ^ a>c);//false false false
28         System.out.println(a<b ^ a<c);//true true ture
29         System.out.println(a>b ^ a<c);//false true true
30         System.out.println(a<b ^ a>c);//true false true
31         System.out.println("------------");
32         System.out.println(!true);
33         System.out.println(!!true);
34         
35         
36     }
37 
38 }
 1 package day02;
 2 
 3 /**
 4  * 1:java初学习,避免面试时一些HR挖的坑。
 5  * 
 6  * @author biexiansheng
 7  *
 8  */
 9 public class Test02 {
10 
11     public static void main(String[] args) {
12         // ctrl+shift+f自動排版
13         //短路与&&,前错后不执行
14         //短路或||,前对后不执行
15         int x=3;
16         int y=4;
17         //System.out.println((x++)==3 && (++y==4));//前对后执行
18         //System.out.println((x++)==3 & (++y==4));//前对后执行
19         //System.out.println((++x)==3 && (++y==4));//前错后不执行
20         System.out.println((++x)==3 & (++y==4));//前错后不执行
21         System.out.println("x="+x);
22         System.out.println("y="+y);
23         
24     }
25 
26 }
 1 package day02;
 2 import java.util.Scanner;
 3 /**
 4  * 1:java初学习,避免面试时一些HR挖的坑。
 5  * 
 6  * @author biexiansheng
 7  *
 8  */
 9 public class Test02 {
10 
11     public static void main(String[] args) {
12         Scanner s=new Scanner(System.in);
13         System.out.println("请输入三个数值a:");
14         int a=s.nextInt();
15         System.out.println("请输入三个数值b:");
16         int b=s.nextInt();
17         if(a==b){
18             System.out.println("a和b相等哟!");
19         }else{
20             System.out.println("a和b的值不相等哟!");
21         }
22         System.out.println("--------------------");
23         int num=a<b? a:b;
24         System.out.println("a,b两个数之间的最小值:"+num);
25         System.out.println("--------------------");
26         System.out.println("请输入三个数值c:");
27         int c=s.nextInt();
28         /*int min=a<b? a:b;
29         int min2=min<c? min:c;
30         System.out.println("a,b,c三个数的最小值:"+min2);*/
31         int min=a<b? (a<c? a:c):(b<c? b:c);
32         System.out.println("a,b,c三个数的最小值:"+min);
33         
34     }
35 
36 }

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏python学习之旅

Python笔记(七):字典、类、属性、对象实例、继承

(一)  简单说明    字典是Python的内置数据结构,将数据与键关联(例如:姓名:张三,姓名是键,张三就是数据)。例如:下面这个就是一个字典 {'姓名':...

3485
来自专栏Java进阶之路

java中String的一个小陷阱

1250
来自专栏分布式系统和大数据处理

.Net中的反射(查看类型信息) - Part.2

简单来说,反射提供这样几个能力:1、查看和遍历类型(及其成员)的基本信息和程序集元数据(metadata);2、迟绑定(Late-Binding)方法和属性。3...

883
来自专栏angularejs学习篇

ref和out的区别在c#中 总结

250
来自专栏Kevin-ZhangCG

[ SSH框架 ] Struts2框架学习之三(OGNL和ValueStack值栈学习)

2066
来自专栏函数式编程语言及工具

深圳scala-meetup-20180902(3)- Using heterogeneous Monads in for-comprehension with Monad Transformer

  scala中的Option类型是个很好用的数据结构,用None来替代java的null可以大大降低代码的复杂性,它还是一个更容易解释的状态表达形式,比如在读...

472
来自专栏技术专栏

Scala入门与进阶(五)- 模式匹配

581
来自专栏xingoo, 一个梦想做发明家的程序员

Java程序员的日常——《编程思想》一切都是对象

今天终于看完了第一章,哈哈,万事开头难....刚开始被编程思想的第一章给蒙住了,讲一堆理论,没什么意思。从第二章开始,真正的开始讲解Java相关的内容,有了一...

16710
来自专栏Java开发者杂谈

JDK1.7新特性(2):异常和可变长参数处理

异常 jdk1.7对try--catch--finally的异常处理模式进行了增强,下面我们依次来看增强的方面。   1. 为了防止异常覆盖,给Throwab...

2484
来自专栏从流域到海域

《Java程序设计基础》 第6章手记

本章主要内容: - 类的定义 - 成员变量和成员方法 - 类及成员的修饰符 - 对象的创建与使用 - 成员变量的访问与方法的...

1805

扫码关注云+社区