Java Web实用小知识02
来源:互联网 发布:win10电脑优化 编辑:程序博客网 时间:2024/04/28 15:04
日期时间转换到页面显示
两种方式: 1. OutputStream out = response.getOutputStream(); map.put("enterFromTime", sdf.format(itemData.getEnterFromTime()));// 入单时间 2. map.put("changeTime", DateUtil.formatDate(itemData.getChangeTime()));// 转单时间 第2种好。
日期加一天
高级搜索时会用到结束日期要加一天,以便得到符合的搜索结果
//日期加一天: //结束时间 if(searchJSON.has("endTime")){ String endTime = (String)searchJSON.get("endTime"); if(!endTime.equals("")){ Date date = DateUtil.getDateFormat().parse(endTime); Calendar cal = Calendar.getInstance(); cal.setTime(date); cal.add(Calendar.DATE, 1); date = cal.getTime(); ItemSearchWrap.setEndTime(date); } }
java中string,integer转bigdecimal的例子
例子1,string 转BigDecimal
public class Test{ public static void main(String[] arg) { String str1="2.30"; BigDecimal bd=new BigDecimal(str1); System.out.println(bd); } }
直接new 就行了。
例子2,BigDecimal和String的相互转换
/*由数字字符串构造BigDecimal的方法 *设置BigDecimal的小数位数的方法 */ import java.math.BigDecimal; //数字字符串 String StrBd="1048576.1024"; //构造以字符串内容为值的BigDecimal类型的变量bd BigDecimal bd=new BigDecimal(StrBd); //设置小数位数,第一个变量是小数位数,第二个变量是取舍方法(四舍五入) bd=bd.setScale(2, BigDecimal.ROUND_HALF_UP); //转化为字符串输出 String OutString=bd.toString();
补充: Integer转BigDecimal
new BigDecimal(Integer.parseInt(findCcid.toString()))
java中类型转换String,list,int
1.String ->list
String[] arr = tpAssignMarkStr.split(","); List<String> list = Arrays.asList(arr);
2.list->String
List<String> markList = tpAssignMarkFieldDao.getTpAssignDeptMarkField(null,paperId); String markStr = StringUtils.join(markList, ",");//考虑到存储多个标志 String[] markString = markStr.split(","); List<TpSampleDataBean> dataList = tsSampleTemplateBean.getTpSampleDataBeans(); List<String> sampleDataIds= new ArrayList<String>();//存放样本的数据list for (TpSampleDataBean d : dataList) { for (String str : markString) { if (str.equals(d.getFieldChar1())) {// FieldChar1存的是标志 if (StringUtils.equals(d.getPaperId(), paperId) && StringUtils.equals(d.getComplianceId(),complianceId)) { sampleDataIds.add(d.getId()); } } } }
1.int->String
int i=12345;String s="";第一种方法:s=i+"";第二种方法:s=String.valueOf(i);第三种方法:String s = Integer.toString(i);
2.String->int
s="12345";int i;第一种方法:i=Integer.parseInt(s);第二种方法:i=Integer.valueOf(s).intValue();
ps1:
第一种方法:s=i+”“; //会产生两个String对象 第二种方法:s=String.valueOf(i);
//直接使用String类的静态方法,只产生一个对象
第一种方法:i=Integer.parseInt(s);//直接使用静态方法,不会产生多余的对象,但会抛出异常
第二种方法:i=Integer.valueOf(s).intValue();//Integer.valueOf(s) 相当于 new
Integer(Integer.parseInt(s)),也会抛异常,但会多产生一个对象
Double, Float, Long 转成字串的方法大同小异.
java遍历Map对象
1.在for-each循环中使用entries来遍历
Map<Integer, Integer> map = new HashMap<Integer, Integer>();for (Map.Entry<Integer, Integer> entry : map.entrySet()) { System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue());}
2.在for-each循环中遍历keys或values。
Map<Integer, Integer> map = new HashMap<Integer, Integer>(); //遍历map中的键 for (Integer key : map.keySet()) { System.out.println("Key = " + key); } //遍历map中的值 for (Integer value : map.values()) { System.out.println("Value = " + value); }
该方法比entrySet遍历在性能上稍好(快了10%),而且代码更加干净。
IDEA 编译时报错 “未结束的字符串文字”解决方法
这个问题就是编码的问题 UTF-8和GBK的混淆,采用如下方法:
1、在idea的Settings中,找到File Encodings,将IDE Encoding 改为UTF-8
2、更换idea下面的encodings.xml文件,恢复到最近一次设置
3、或者更改encodings.xml里面的配置,GBK和UTF-8统一一下
jdk map详解
Java 自带了各种 Map 类。这些 Map 类可归为三种类型:1. 通用Map,用于在应用程序中管理映射,通常在 java.util 程序包中实现HashMap、Hashtable、Properties、LinkedHashMap、IdentityHashMap、TreeMap、WeakHashMap、ConcurrentHashMap2. 专用Map,通常我们不必亲自创建此类Map,而是通过某些其他类对其进行访问java.util.jar.Attributes、javax.print.attribute.standard.PrinterStateReasons、java.security.Provider、java.awt.RenderingHints、javax.swing.UIDefaults3. 一个用于帮助我们实现自己的Map类的抽象类AbstractMap类型区别HashMap最常用的Map,它根据键的HashCode 值存储数据,根据键可以直接获取它的值,具有很快的访问速度。HashMap最多只允许一条记录的键为Null(多条会覆盖);允许多条记录的值为 Null。非同步的。TreeMap能够把它保存的记录根据键(key)排序,默认是按升序排序,也可以指定排序的比较器,当用Iterator 遍历TreeMap时,得到的记录是排过序的。TreeMap不允许key的值为null。非同步的。 Hashtable与 HashMap类似,不同的是:key和value的值均不允许为null;它支持线程的同步,即任一时刻只有一个线程能写Hashtable,因此也导致了Hashtale在写入时会比较慢。 LinkedHashMap保存了记录的插入顺序,在用Iterator遍历LinkedHashMap时,先得到的记录肯定是先插入的.在遍历的时候会比HashMap慢。key和value均允许为空,非同步的。 最快的遍历方法:Iterator<Map.Entry<String, String>> iterator = map.entrySet().iterator();while (iterator.hasNext()) { Map.Entry<String, String> entry = iterator.next(); System.out.println(entry.getKey() + " :" + entry.getValue());}//排序(按key排序):Map<String, String> map = new HashMap<String, String>();map.put("a", "c");map.put("b", "b");map.put("c", "a");// 通过ArrayList构造函数把map.entrySet()转换成listList<Map.Entry<String, String>> list = new ArrayList<Map.Entry<String, String>>(map.entrySet());// 通过比较器实现比较排序Collections.sort(list, new Comparator<Map.Entry<String, String>>() { public int compare(Map.Entry<String, String> mapping1, Map.Entry<String, String> mapping2) { return mapping1.getKey().compareTo(mapping2.getKey()); }});for (Map.Entry<String, String> mapping : list) { System.out.println(mapping.getKey() + " :" + mapping.getValue());}//按value排序Map<String, String> map = new TreeMap<String, String>(); map.put("a", "c"); map.put("b", "b"); map.put("c", "a"); // 通过ArrayList构造函数把map.entrySet()转换成list List<Map.Entry<String, String>> list = new ArrayList<Map.Entry<String, String>>(map.entrySet()); // 通过比较器实现比较排序 Collections.sort(list, new Comparator<Map.Entry<String, String>>() { public int compare(Map.Entry<String, String> mapping1, Map.Entry<String, String> mapping2) { return mapping1.getValue().compareTo(mapping2.getValue()); } }); for (String key : map.keySet()) { System.out.println(key + " :" + map.get(key)); }
- Java Web实用小知识02
- Java Web实用小知识01
- java实用小知识
- 实用电脑小知识
- python实用小知识
- 实用小知识
- VC实用小知识总结
- VC实用小知识总结
- Android中实用小知识
- java实用知识集
- Web前端小知识
- web前端小知识
- web前端小知识
- Web前台小知识
- Java 实用小方法
- java实用小程序
- JAVA集合实用知识整理
- VC实用小知识总结(转载)
- Debian
- 关于这个博客
- 反射中常用的几个函数
- 【DirectX11】第四篇 Effects框架
- HDU 1000 A + B Problem
- Java Web实用小知识02
- ny 108 士兵杀敌(一)-- 水(大家都是这么说的)利用线段树果断超时。。。
- sql语句的group by与having子句
- 杨辉三角
- reactjs、webpack、babel、eslint
- 修改hosts访问谷歌方法
- 第三方应用使用总结
- 子串查找问题
- backbone中元素与对象的关系