Tag: 字符串

获取String中每个单词的第一个字符

我正在努力让一个程序工作,它执行以下操作: 假设我们有一个名为name的String ,设置为”Stack Overflow Exchange” 。 我想输出给用户”SOE” ,每个单词的第一个字符。 我尝试使用split()方法,但我没有做到。 我的代码: public class q4 { public static void main(String args[]) { String x = “michele jones”; String[] myName = x.split(“”); for(int i = 0; i < myName.length; i++) { if(myName[i] == "") { String s = myName[i]; System.out.println(s); } } } } 我试图检测是否有空格,然后我可以简单地采取下一个索引。 谁能告诉我我做错了什么?

Java:字符串拆分

我有以下字符串: Mr John Smith Dickson 我想把它分成三部分: 第一部分 – 先生 第二部分 – 约翰史密斯迪克森 第3部分 – john@yahoo.com 我对如何实现这一点感到困惑,任何人都可以帮忙吗? 以上名称只是样本,名称可能会有所不同,例如。 约翰,约翰史密斯,约翰史密斯迪克森

替换文本中的变量:建议?

我正在寻找一个很好的模板引擎或一小段代码来在Java中的字符串中扩展类似Ant的变量。 例: String result = expand (“${firstName} ${familyName}”, map); 它应该至少支持java.util.Map但是也可以使用能够处理bean或递归查找或在地图/对象列表中查找的东西。 建议? [编辑]回复TofuBeer:没有嵌套,只有{}内的有效Java标识符。 ${}以外的任何内容都应逐字复制。 $$应该变成$“. If that’s not possible ${dollar} $“. If that’s not possible ${dollar}应该扩展到一个$ (所以你可以表达15.00 $ )。

用于复杂数学表达式的高级标记生成器

我想标记一个由整数,浮点数,运算符,函数,变量和括号组成的字符串。 以下示例应该提亮问题的本质: 当前状态: String infix = 4*x+5.2024*(Log(x,y)^z)-300.12 期望的状态: String tokBuf[0]=4 String tokBuf[1]=* String tokBuf[2]=x String tokBuf[3]=+ String tokBuf[4]=5.2024 String tokBuf[5]=* String tokBuf[6]=( String tokBuf[7]=Log String tokBuf[8]=( String tokBuf[9]=x String tokBuf[10]=, String tokBuf[11]=y String tokBuf[12]=) String tokBuf[13]=^ String tokBuf[14]=z String tokBuf[15]=) String tokBuf[16]=- String tokBuf[17]=300.12 所有提示和解决方案将不胜感激。

用连字符将一个字符串分成两个字符串

我从请求中获取String变量。 String issueField = request.getParameter(“issueno”); 这可能是也可能没有中间的连字符。 我想能够遍历字符串并在看到连字符时划分字符串。

在字符串中查找重复的模式

如何在字符串中找到重复的模式? 例如,如果输入文件是 AAAAAAAAA ABABAB ABCAB ABAb 它会输出: A AB ABCAB ABAb

在Java中将字符串转换为带有2个小数位的十进制数

在Java中,我试图将一串格式”###.##”解析为浮点数。 该字符串应始终具有2个小数位。 即使String的值为123.00 ,浮点数也应该是123.00 ,而不是123.0 。 这是我到目前为止: System.out.println(“string liters of petrol putting in preferences is ” + stringLitersOfPetrol); Float litersOfPetrol = Float.parseFloat(stringLitersOfPetrol); DecimalFormat df = new DecimalFormat(“0.00”); df.setMaximumFractionDigits(2); litersOfPetrol = Float.parseFloat(df.format(litersOfPetrol)); System.out.println(“liters of petrol before putting in editor: ” + litersOfPetrol); 它打印: string liters of petrol putting in preferences is 010.00 liters of petrol before […]

创建JSON对象并将其转换为Java中的String

我需要通过httppost发送一个相当长的JSON头。 在Python中是这样的: self.body_header = { “client”: self.client_name, “clientRevision”: self.client_version, “uuid”: str(uuid.uuid4()), “session”: self.get_sessionid()} self.body = { “header”: self.body_header, “country”: {“IPR”:”1021″, “ID”:”223″, “CC1″:”0”, “CC2″:”0”, “CC3″:”0”, “CC4″:”2147483648”}, “privacy”: 1} 我需要在Java中做类似的事情,即以某种方式创建一个JSON结构,将其转换为String并通过http发送它。 问题是,我怎样才能轻松实现这一目标? 有用的库吗? 我知道如何发送它,但不知道如何构建它然后创建一个String。 谢谢你们。

如何在java中垃圾收集String对象?

正如我们所知,我们何时创建String对象,如String value = new String(“ABC”); 然后将创建新的String对象,当我们再次使用value变量作为value=”xyz”将创建一个新的String对象。 所以我的问题是,之前创建的String对象将在哪一点被垃圾收集?

在java中加载大型文本文件的最佳方法

我有一个文本文件,每行有一个整数序列: 47202 1457 51821 59788 49330 98706 36031 16399 1465 … 该文件有300万行这种格式。 我必须将此文件加载到内存中并从中提取5-gram并对其进行一些统计。 我确实有内存限制(8GB RAM)。 我试图最小化我创建的对象的数量(只有1个类,包含6个浮点变量,以及一些方法)。 并且该文件的每一行基本上生成该类的对象数(与#ofwords中的行的大小成比例)。 当C ++出现时,我开始觉得Java不是一个很好的方法来做这些事情。 编辑:假设每一行产生该类的(n-1)个对象。 其中n是由空格分隔的该行中的标记数(即1457)。 因此,考虑到每行10个字的平均大小,每条线平均映射到9个对象。 因此,将有9 * 3 * 10 ^ 6个对象。所以,所需的内存是:9 * 3 * 10 ^ 6 *(8字节obj标头+ 6 x 4字节浮点数)+(一个地图(字符串,对象)和另一个映射(Integer,ArrayList(Objects)))。 我需要将所有内容保存在内存中,因为之后会发生一些数学优化。