建民的Java小课堂
Java
Java快问快答:
1、JAVA的基本运行单位是类还是方法?
很明显是类
2、类由什么组成?
由特性和行为的对象组成
3、变量的类型,相互之间可以转换吗,浮点数?
答案是可以
int i=99;
byte b=(byte)i;
char c=(char)i;
float f=(float)i;
值得注意的是,高精度向低精度的变量转换会掉精度值,低精度向高精度转换不会掉精度
4、String是一个数据类型吗?
不是,String是一个类,因为他是大写,比如Scanner也是一个关于输入的类,对应下是
Scanner scanner=new Scanner(System.in); //byte型scanner.NextByte()
byte n1=scanner.nextByte(); //short型scanner.NextShort
short n2=scanner.nextShort(); //int 型scanner.NextInt()
int n3=scanner.nextInt(); //double型scanner.NextInt()
double n4=scanner.nextDouble(); //float型scanner.NextInt()
float n5=scanner.nextFloat();
string型scanner.Next();和scanner.NextLine();
这个next()与nextline()的主要区别在于next()方法在读取内容时,会过滤掉有效字符前面的无效字符,对输入有效字符之前遇到的空格键、Tab键或Enter键等结束符,next()方法会自动将其过滤掉;只有在读取到有效字符之后,next()方法才将其后的空格键、Tab键或Enter键等视为结束符;所以next()方法不能得到带空格的字符串。
nextLine()方法它的结束符只能是Enter键,nextLine()方法返回的是Enter键之前没有被读取的所有字符,它是可以得到带空格的字符串的。
String s1=scanner.next();
String s2=scanner.nextLine();
5、static代表的含义?
意思是唯一的,不可被修改的静态常量
Java对标识符的要求: (1)开头:字母,_和$; (2)不能以数字打头; (3)不能包含空白字符、制表、空格、回车、换行符; (4)不能用关键字。
Java中的基本数据类型独立于具体平台 整型: byte(8),short(16),int(32), long(64) 浮点型: float(32), double(64) 使用科学计数法定义浮点数值:123.456=1.23456e+2 布尔型: true, false 字符型: ‘a’, ’A’ 字符串: “Hello,China” String s1=“abc”,S2=“abc”
Java中除了 int , float等少数几个数据类型,其余的数据类型都用来引用对象
利用关键字final声明常量,对于全局的常量(即在整个项目中都可用),通常按以下模式声明: public static final int MAX_VALUE=512 如果某常量只在本类使用,则应将其定义为private的。 常量名字通常采用大写字母。
枚举类型是引用类型!
枚举不属于原始数据类型,它的每个具体值都引用一个特定的对象。相同的值则引用同一个对象。 可以使用“==”和equals()方法直接比对枚举变量的值,换句话说,对于枚举类型的变量,“==”和equals()方法执行的结果是等价的
建民说过一个字节占8个空间bit, int 类型有占4个字节,源码就是2的31次方,因为还有个符号位。
源码反码补码:
对于正数:
反码、补码都与原码一样
对于负数:
- 反码:原码中除去符号位,其他的数值位按位取反,即0变1,1变0
- 补码:反码+1
注意:对于负数,原码中最高位用来表示符号
建民的Java小课堂的更多相关文章
- 小课堂Week10 例外处理设计的逆袭Part3
小课堂Week10 例外处理设计的逆袭Part3 今天是<例外处理设计的逆袭>这本书阅读的第三天,也是最后一天,我们会主要通过实例,对Part2中提出的例外处理等级进行解读. Level1 ...
- 小课堂Week8 例外处理设计的逆袭Part1
小课堂Week8 例外处理设计的逆袭Part1 今天和大家讲一本书,书名是<例外处理设计的逆袭>. 为什么想讲这本书,是因为,例外处理在程序代码中到处存在,但是这些到底该如何写好,总觉得有 ...
- Spark小课堂Week6 启动日志详解
Spark小课堂Week6 启动日志详解 作为分布式系统,Spark程序是非常难以使用传统方法来进行调试的,所以我们主要的武器是日志,今天会对启动日志进行一下详解. 日志详解 今天主要遍历下Strea ...
- Spark小课堂Week5 Scala初探
Spark小课堂Week5 Scala初探 Scala是java威力加强版. 对Java的改进 这里会结合StreamingContext.scala这个代码说明下对Java的改进方面. 方便测试方式 ...
- Spark小课堂Week3 FirstSparkApp(RDD开发)
Spark小课堂Week3 FirstSparkApp 问题:Java有哪些数据结构 大致有如下几种,其中List与Map是最重要的: List Map Set Array Heap Stack Qu ...
- java第一课堂
java第一课堂视频请在优酷搜索java第一课堂即可
- java正则表达式之java小爬虫
这个java小爬虫, 功能很简单,只有一个,抓取网上的邮箱.用到了javaI/O,正则表达式. public static void main(String[] args) throws IOExce ...
- 小课堂Week12 Clean Code Part1
小课堂Week12 Clean Code Part1 今天的主题是函数,让我们看一个函数,找一找其中的"不整洁". 我们也根据这段代码,讨论下对于整洁代码的两个重要原则. publ ...
- 小课堂Week11 会说话的代码
小课堂Week11 会说话的代码 今天主要讨论下,在编码过程中和"命名"相关的问题.因为命名方法比较自由,如果要提高可读性,我们需要尽量使其符合正规的英文语法习惯. 变量/属性 通 ...
- 小课堂Week9 例外处理设计的逆袭Part2
小课堂Week9 例外处理设计的逆袭Part2 今天继续阅读<例外处理设计的逆袭>这本书,我们先看两个案例: 案例1 问:如果要设计一个依据学号到数据库中查询学生资料的函数,当找不到符合条 ...
随机推荐
- 好书推荐之JAVA并发编程扛鼎之作:《Java并发编程实战》、《Java并发编程的艺术》
(pdf文档下载见文末) 大佬推荐 <Java 并发编程实战>,是一本完美的 Java 并发参考手册. 书中从并发性和线程安全性的基本概念出发,介绍了如何使用类库提供的基本并发构建块,用于 ...
- NC16850 [NOI1998]免费馅饼
题目链接 题目 题目描述 SERKOI最新推出了一种叫做"免费馅饼"的游戏:游戏在一个舞台上进行.舞台的宽度为W格,天幕的高度为H格,游戏者占一格.开始时游戏者站在舞台的正中央,手 ...
- 【Unity3D】拖尾TrailRenderer
1 TrailRenderer 简介 TrailRenderer 组件用于实现拖尾效果,可以调整拖尾颜色.时长.宽度等属性,其属性面板如下: Materials:拖尾材质,最好设置为 Defaul ...
- spring boot2.0集成mybatis-plus实战
说明: 本例演示spring boot2.0如何集成mybatis-plus 如何使用代码生成器 项目源码: https://gitee.com/indexman/mybatis-plus-demo ...
- Python之猜数字游戏
说明: 本例改编自<Python编程快速上手>.例子很简单我就不多说了 直接上代码,给初学python练手用. 给你6次机会猜对一个预先生成好的1-20之间的整数.覆盖一下知识点: 条件语 ...
- Servlet实现导出下载csv文件
工作上遇到的场景,需要将客户列表数据导出成csv文件.测试了一个最简单版本,记录一下. 订单实体类: package entity; /** * 订单信息实体 * Created by dylan-p ...
- win32 - wsprintfW的使用
文档:将格式化的数据写入指定的缓冲区.根据格式字符串中相应的格式说明,将转换任何参数并将其复制到输出缓冲区.该函数在其写入的字符后附加一个终止空字符,但返回值的字符计数中不包含终止空字符. 例子: # ...
- win32 - ReadDirectoryChangesW的使用
任务:创建一个进程,并在进程内创建一个文本,再创建另一个进程来监控第一个进程内的文本变化 //Process 1 #include <windows.h> #include <ios ...
- deque双端队列
# 支持从任意一端增加和删除元素 d = collections.deque() d.extend('abcdefg') d.append('h') d.extendleft(range(6)) # ...
- django中从你的代码运行管理命令call_command
# 主要用法就是调用django自定义的Command命令 # 语法 django.core.management.call_command(name,*args,**options) - name ...