1. 程式人生 > >js與java字串與陣列的轉換

js與java字串與陣列的轉換

一、js

1.js陣列轉為字串

使用join()方法將陣列轉為字串

var a, b;
a = new Array(0,1,2,3,4);
b = a.join(",");

2,js字串轉陣列

split()方法將字串轉為陣列

var s = "abc,abcd,aaa";
var ss = s.split(",");// 在每個逗號(,)處進行分解。

二、java

1.陣列轉為字串

	public static void main(String[] args) {
		int arr[]={1,7,3,8,2};
		System.out.println(arr);
		System.out.println("以字串形式輸出陣列:"+Arrays.toString(arr));
		Arrays.sort(arr); // 給陣列排序
		System.out.println("排序後的陣列:"+Arrays.toString(arr));
		System.out.println(Arrays.binarySearch(arr, 1));
		Arrays.fill(arr, 0); // 將指定內容填充到陣列中
		System.out.println("填充陣列後的字串:"+Arrays.toString(arr));
		
	}

1.1通過for迴圈

StringBuffer sb = new StringBuffer();

for(int i = 0; i < str.length;i++){

  sb.append(str[i]);

}

String s = sb.toString();

1.2使用StringUtils的join方法陣列轉為字串

String[] arr = { "0", "1", "2", "3", "4", "5" };
//陣列轉字串 org.apache.commons.lang3.StringUtils
String str3 = StringUtils.join(arr); // 陣列轉字串,其實使用的也是遍歷
System.out.println(str3); // 012345
String str4 = StringUtils.join(arr, ","); // 陣列轉字串(逗號分隔)(推薦)
System.out.println(str4); // 0,1,2,3,4,5

1.3使用ArrayUtils的toString方法

// 陣列轉字串 org.apache.commons.lang3.ArrayUtils
String str2 = ArrayUtils.toString(arr, ","); // 陣列轉字串(逗號分隔,首尾加大括號)
System.out.println(str2); // {0,1,2,3,4,5}

1.4字元陣列轉字串可以通過下面的方式:

char[] data =  {'a', 'b', 'd'};

String s = new String(data);

2,字串轉陣列

2.1字串必須有","或其他分隔

String str = "0,1,2,3,4,5";
String[] arr = str.split(","); // 用,分割
System.out.println(Arrays.toString(arr)); // [0, 1, 2, 3, 4, 5]

2.2字元陣列轉字串可以通過下面的方式:

char[] data =  {'a', 'b', 'd'};

String s = new String(data);

2.3java陣列轉為list方法,通常用來判斷陣列是否包含某個元素

import org.apache.commons.lang.StringUtils; 
String[] roleIdsArr = memberRoleIds.split(","); 
Arrays.asList(roleIdsArr).contains("5afd389c10174e21af1680dd9f79f049");

具體使用:

js前臺傳遞引數java後臺接收引數,執行刪除多條資料的操作

js前臺將多條資料轉為逗號隔開的字串:

	var ids = $("#id").val();
var url=Leopard.getContextPath() +"/deleteTczb1.act";
	var idstr = "";
	for(var i=0;i<ids.length;i++){
		idstr+=(","+ids[i])
	}
	var paramData={ids:idstr};
	getData(url,paramData);

java後臺接收字串並執行刪除操作;

@RequestMapping("/deleteTczb")
	@ResponseBody
	public Boolean deleteCzb(HttpServletRequest request, HttpServletResponse response){
		String ids = request.getParameter("ids");
		String[] idArray = ids.replaceFirst(",", "").split(",");
		String sql = "delete from SY_TYZJKXCZB t where P_ID in(";
		for (String string : idArray) {
			sql+=(",?");
		}
		sql+=")";
		
		SqlUtil.getExecutor().execute(sql.replaceFirst(",", ""), idArray);
		return true;
	}

java很多情況下是通過stringBuffer來拼接字串的

StringBuffer sql = new StringBuffer("select ID from TB where ID in (");
			StringBuffer temp = new StringBuffer();
			for (String ID : Id.split(",")) {
				temp.append(",?");
			}  
			sql.append(temp.toString().replaceFirst(",", ""));
			sql.append(")");