java程序员面试宝典1
1.在java中字符串只以Unicode一种形式存在(不选择任何特定的编码,直接使用他们在字符集中的编号,这是统一的唯一的方法)
2.在java中,是指在JVM中,在内存中,在你的代码里声明的每个char,String类型的变量中。
public class Test2 {
public static void main(String[] args){
char han='永';
System.out.format("%x",(short)han);
//这里输出6c38
char han1=0x6c38;
System.out.println(han);
//这里输出永
}
}
//这里是说只要你正确的读入了永字,那么它在内存找那个的表示形式一定是0x6c38,没有其他任何值能够表示这个字了
JVM的这种约定是的一个字符分为两个部分:JVM内部和OS文件系统,编码的转换一般发生在JVM和OS的交界处。
3.基本IO可以分为两大阵营:面向字节的输入/输出流;面向字符的输入输出流。
(1)面向字节:保证文件系统中的二进制内容和读入JVM内部的二进制内容一致,不能变换任何0和1的顺序。适合读入音视频文件或者不需要做交换的文件。
(2)面向字符的I/O:读入文件系统中的字符和读入内存中的“字符”要保持一致。
在输出时,内存中的Unicode字符使用了系统默认的编码方式进行了编码,而在输出的时候,讲文件系统中已经编码过的字符使用默认的编码方案进行还原。
一个字符和字节之间的转换需要用到编码的转换,在java中能够制定转换编码的地方有两个:InputStreamReader和OutputStreamWriter
java程序员面试宝典1的更多相关文章
- 《JAVA 程序员面试宝典(第四版)》读书笔记之前言
工作五年了一直在小的软件公司混,总感觉自己的专业知识没有太大的提升.当然了中间也换了一两家公司,面试的公司就很多家,总感觉正规的软件公司(无论大小)对于基础知识的考核都非常重视,而不管你说你之前服务过 ...
- JAVA程序员面试宝典
程序员面试之葵花宝典 面向对象的特征有哪些方面 1. 抽象:抽象就是忽略一个主题中与当前目标2. 无关的那些方面,3. 以便更充分地注意与当前目标4. 有关的方面.抽象并不5. 打算了解全部问题 ...
- [Java程序员面试宝典]读书笔记
ClassLoader具备层次关系,且不止一种.不同的类装载器分布创建的同一个类的字节码数据属于完全不同的对象,没有任何关联 通过Class.forName(String className),能够动 ...
- 【Java】Java程序员面试宝典(第三版)第5章----Java程序设计基本概念
1.static静态变量,在次级作用域也可以被修改. 2.k++ + k++.第一个自加实际上只有在与计算+k++时补增.详情P36的题目. 3.Java数据类型从低到高分为(byte short c ...
- Java程序员面试宝典1 ---Java基础部分(该博文为原创,转载请注明出处)
(该博文为原创,转载请注明出处 http://www.cnblogs.com/luyijoy/ by白手伊凡) 1. 基本概念 1) Java为解释性语言,运行过程:程序源 ...
- java程序员面试宝典之——Java 基础部分(1~10)
基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语法,集合的语法,io 的语法,虚拟机方面的语法. 1.一个".java"源文件中是否可以包 ...
- Java程序员面试宝典——重要习题整理
1.下面程序的输出结果是() public class Test { public static void main(String[] args) { int j = 0 ; for(int i = ...
- 《Java程序员面试宝典》读书笔记1
今天读书发现一个很有趣的问题 请问以下程序会输出什么? public class Test2 { public static void main(String[] arg ...
- 《JAVA 程序员面试宝典(第四版)》之循环、条件、概率
分享内容:关于集合的使用 书页号码:77页 题目:一个字符串中包含a~z中的多个字符,如有重复,如String data = "aavzcadfdsfsdhshgwasdfasd ...
- 《JAVA 程序员面试宝典(第四版)》之传递与引用篇
废话开场白 这个周末突然很想创业,为什么呢?原因很简单,我周围的同学或者说玩的比较好的朋友都发达了,前一个月和一个两年前还睡在一张床上的朋友,他现在已经在深圳买房买车了,没错是在深圳买 ...
随机推荐
- 前端MVC、MVVM的简单实现
MVC MVC是一种设计模式,它将应用划分为3个部分:数据(模型).展示层(视图)和用户交互层.结合一下下图,更能理解三者之间的关系.换句话说,一个事件的发生是这样的过程 用户和应用交互 控制器的事件 ...
- 小程序踩坑之获取不到e.target.dataset的值
在页面与js传值中我们经常用到data-id="1"的方式,然后通过e.target.dataset.id取id的值今天在获取值时怎么也取不到,后来发现e对象有currentTar ...
- Daily Schedule
8.29~9.2周报: 完成Forward Path页面测试用例 2天 完成当前Return Path可执行控件的相关测试用例 1.5天 整理更新web自动化测试用例文档 1天 跟踪定位SNMP自动化 ...
- SecureCRT For Mac安装、破解、使用详细总结
转:https://blog.csdn.net/so_geili/article/details/83315852#_4 https://www.sednax.com/download.php
- ImportError: cannot import name 'Document'
一种常见的原因是,程序文件的名字不对. 程序文件的名字不能和 import lib 里的名字冲突. 一个例子: 如果程序文件名字是 docx.py,程序又 from docx import Docum ...
- Mini-batch 和batch的区别
原文地址:https://blog.csdn.net/weixin_39502247/article/details/80032487 深度学习的优化算法,说白了就是梯度下降.每次的参数更新有两种方式 ...
- sql四种连接方式
1.内连接(inner join)只有两个表相匹配的行才能在结果集中显示出来2.左连接(left join)以左表为主,左表所有的数据都会在结果集中出现,右表根据左表对应的数据显示,与左表匹配的数 ...
- [flask]jinjia2处理表单-实现搜索界面
思路: 通过flask-wtf创建forms表单类 在app.py中创建search_name()视图函数,实例化form表单类,将通过render_template将form传给html模板 创建h ...
- CICD - 持续集成与持续交付
持续集成与持续交付是软件开发和交付中的实践.我们项目中一直在践行持续集成(CI:Continuous Integration):持续交付(CD:Continuous Delivery)未能达到理想状态 ...
- flutter dialog
flutter Dialog import 'dart:math'; import 'package:flutter/material.dart'; import 'test.dart'; impor ...