字符串,字符数组的相互转换~
今天做了Leetcode 上一道简单的算法题:
石头与钻石:
给定字符串J
代表石头中宝石的类型,和字符串 S
代表你拥有的石头。 S
中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石。
J
中的字母不重复,J
和 S
中的所有字符都是字母。字母区分大小写,因此"a"
和"A"
是不同类型的石头。
题解:直接使用了java暴力解法:
将字符串直接转换为字符数组,遍历石头数组中所有元素,然后在判断钻石类是否在石头中,如果在的话+1,最后返回count。
class Solution { public int numJewelsInStones(String J, String S) { char[] a=J.toCharArray(); char[] b=S.toCharArray(); int count=0; for(int i=0;i<a.length;i++) { for(int j=0;j<b.length;j++) { if(b[j]==a[i]) count++; } } return count; } }
在做这道题时,我是想到了将字符串转换为数组的,奈何我是小白,并不知道如何转换,so百度了下:
字符串转换为字符数组:
String a = “asdcaf”;
char [] b =a.toCharArray(); //必须为char类型
字符数组转换为字符串:
char [] a ={“a”,”b”,”c”};
String b = new String(a);
延伸:
整型转换为字符串:
int i =123;
String a = Integer.toString (i);
字符串转换为整型:
int b = Integer.valueof(a).intValue();
这些都是很基础的,所以还是要熟练使用!