java中的包注意事项
1:需要导入包的三个地方
a:需要导入第三方的jar包中的类或接口
b:需要导入除了java.lang包的其他包中的类(jdk中的类)
c:需要导入自己写的不同包的类
2:引入包的三种方式
a:import 包名.类名(最常用的方式)
b:import 包名.*,这种方式将向类中导入该包中的所有公共类
c:直接 包名.类名 修饰变量 例如: java.util.Date date = new java.util.Date();
下面的代码会帮助你
package com.baidu.test; import java.text.SimpleDateFormat;
import java.util.Date;//需要导入包的第三个地方:需要引用除了java.lang包的其他包中jdk带的类
import com.baidu.tool.PinYinTool;//需要导包的第二个地方:需要使用在不同包的类 public class Test { public static void main(String[] args) {
String cnStr = "李银霞";
System.out.println(PinYinTool.getPinYinAllChar(cnStr, true)); //输出“LIUFEIFEI”
System.out.println(PinYinTool.getPinYinAllChar(cnStr, false)); //输出“liufeifei”
java.util.Date date= new java.util.Date();
SimpleDateFormat sdf = new SimpleDateFormat("");
}
}
package com.baidu.tool;
//需要导入包的第一个地方:需要使用第三方的jar包中的类或接口
import net.sourceforge.pinyin4j.PinyinHelper;
import net.sourceforge.pinyin4j.format.HanyuPinyinCaseType;
import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat;
import net.sourceforge.pinyin4j.format.HanyuPinyinToneType;
import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType;
import net.sourceforge.pinyin4j.format.exception.BadHanyuPinyinOutputFormatCombination; public class PinYinTool { /**
* 将汉字转换为全拼的拼音。
*
* @param isCapital true表示返回大写形式,false表示返回小写形式。
*/
public static String getPinYinAllChar(String zn_str, boolean isCapital) {
char[] strChar = zn_str.toCharArray();
HanyuPinyinOutputFormat hanYuPinOutputFormat = new HanyuPinyinOutputFormat();
// 输出设置,大小写,音标方式等
if(isCapital) {
hanYuPinOutputFormat.setCaseType(HanyuPinyinCaseType.UPPERCASE);
} else {
hanYuPinOutputFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE);
}
hanYuPinOutputFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
hanYuPinOutputFormat.setVCharType(HanyuPinyinVCharType.WITH_V); StringBuffer pyStringBuffer = new StringBuffer();
String[] strString = new String[strChar.length];
try {
for (int i = 0; i < strChar.length; i++) {
if (Character.toString(strChar[i]).matches("[\\u4E00-\\u9FA5]+")) {//如果是汉字字符
strString = PinyinHelper.toHanyuPinyinStringArray(strChar[i], hanYuPinOutputFormat);//将汉字的几种全拼都存到strString数组中
pyStringBuffer.append(strString[0]);//取出该汉字全拼的第一种读音并连接到字符串pyStringBuffer后
} else {//如果不是汉字字符,直接取出字符并连接到字符串pyStringBuffer后
pyStringBuffer.append(Character.toString(strChar[i]));
}
}
} catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace();
}
return pyStringBuffer.toString();
}
}
上面的两个类在不同的包中, 所以使用时需要import导入包! !
同时也用到了第三方中的jar包中的类, 需要导入包
Date也用到了sun公司写的类, 需要导入包
注意! 在包中的类不允许导入默认包中的类! !
java中的包注意事项的更多相关文章
- java 中的包概念
Java 中的包package, 就是电脑中的文件夹.我们平时在工作中,文件太多时,都会新建文件夹进行分类管理,java 中的包也是类似的道理,当我们的类太多时,也需要进行分类管理,这时我们就会把类文 ...
- Java中带包(创建及引用)的类的编译
Java中带包(创建及引用)的类的编译与调试 java源程序的编译大家都知道,也就是cmd中到源文件所在目录下javac **.java即可,当程序中有包声明还能简简单单的直接javac **.jav ...
- 理解Java中【包】的概念
Java中用package关键字定义一个包,下面通过几个实验,理解Java中的包的概念和作用. 实验1:先看一个无包的情形 在G盘下新建一个Test.java,如图1: 写下面这些代码 <spa ...
- java中的包以及内部类的介绍
1:形式参数和返回值的问题(理解) (1)形式参数: 类名:需要该类的对象 抽象类名:需要该类的子类对象 接口名:需要该接口的实现类对象 (2)返 ...
- Java中,包的概念、常量、静态成员、继承
新建包:左上角-新建-包 命名规则(通常从大到小,方便整合不容易冲突) 例如:com.itnba.maya.test package必须在最顶行,之前不能再有其他代码 使用包: 快捷方式:使用包中的 ...
- java中的包有那些 ???
java.util工具包java.sql数据库包java.io输入输出流包java.net网络包java.lang基础包这些是基本的包,还有一些其他的例如集合,反射等的工具包,你可以去查一下java ...
- Java中的包
包:定义包用package关键字. 1:对类文件进行分类管理. 2:给类文件提供多层名称空间. 如果生成的包不在当前目录下,需要最好执行classpath,将包所在父目录定义到classpath变量中 ...
- java中的“包”与C#中的“命名空间
原文地址:http://www.cnblogs.com/lidabo/archive/2012/12/15/2819865.html Package vs. Namespace 我们知道,重用性(re ...
- Java中的包含义
JAVA提供了强大的应用程序接口,既JAVA类库.他包含大量已经设计好的工具类,帮助程序员进行字符串处理.绘图.数学计算和网络应用等方面的工作.下面简单介绍JAVA核心类库中常用的组建包. 1.jav ...
随机推荐
- flask读书记录
1. 在flask中,如果我们在视图函数中使用data = request.get_json()方法获取数据,那么在客户端发送POST请求时,就需要设置设置正确的Content-Type首部.在aja ...
- DB 分库分表的基本思想和切分策略
DB 分库分表的基本思想和切分策略 一.基本思想 Sharding的基本思想就要把一个数据库切分成多个部分放到不同的数据库(server)上,从而缓解单一数据库的性能问题.不太严格的讲,对于海量数据的 ...
- LeetCode 136. 只出现一次的数字(Single Number)
题目描述 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次.找出那个只出现了一次的元素. 说明: 你的算法应该具有线性时间复杂度. 你可以不使用额外空间来实现吗? 示例 1: ...
- web前端知识点反思总结
当别人问你之前的知识,我们便会勾起之前的回忆,然后进行一番痛苦的挣扎后,发现我依然记得你 什么是 DTD ? 文档类型定义 (DTD) 可定义合法的 xml 文档的构建模块 ,他是使用一系列合法的元素 ...
- Go 指针声明后赋值,出现 panic: runtime error: invalid memory address or nil pointer dereference
指针基础知识package main import "fmt" func main() { var p *int p = new(int) *p = 1 fmt.Println(p ...
- JAVA静态数据的初始化;
①:Java首次会自动对变量进行初始化,其顺序优于构造器: ②:如果一个域是静态的的基本类型域,且也没有对它进行初始化,那么它就会获得基本类型的标准初值,如果它是一个对象引用,那么他的默认初始化值为n ...
- 【React自制全家桶】六、React性能优化(持续更新总结)
一.通过虚拟DOM来提升性能(自动) 底层讲解见[React自制全家桶]二.分析React的虚拟DOM和Diff算法 二.将多次setState合并为一次执行(自动) 底层讲解见[React自制全 ...
- 自定义有焦点的TextView实现广告信息左右一直滚动的跑马灯效果
import android.content.Context; import android.text.TextUtils; import android.util.AttributeSet; imp ...
- 算法试题 - 找出最小 k 个数
题目 题目:输入n个整数,找出其中最小的K个数.例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,. 解析 思路1 这一题应用堆排序算法复杂度只有O(nlog k), ...
- 解决FTP服务器上中文名文件下载后为空的问题
转: 解决FTP服务器上中文名文件下载后为空的问题 2017年07月20日 15:19:21 代码的寂寞 阅读数 2428 版权声明:本文为博主原创文章,未经博主允许不得转载. https://bl ...