Tag: string

为什么ctime()返回的string包含换行符?

为什么ctime()返回的string的换行符( 0x0A )是最后一个字符? 例如,这个代码: #include <iostream> #include <cstdlib> int main(int argc, char* argv[]) { time_t now; time(&now); char* time_str = ctime(&now); std::cout << time_str << "why is this on a new line?" << std::endl; return 0; } …产生以下输出: $ ./time.exe Wed Oct 23 14:52:29 2013 why is this on a new line? $ 没什么大不了的; 我可以从string中ctime()最后一个字节,但为什么ctime()把它放在第一位呢?

Java 8的string重复数据删除function

由于Java中的String (与其他语言一样)消耗大量内存,因为每个字符都占用两个字节,所以Java 8引入了一个名为string重复数据删除的新function,它利用了字符数组在string和最终内部这一事实,所以JVM可以搞砸他们。 我已经阅读了这个例子 ,但由于我不是一个亲java编码器,我很难理解这个概念。 这是它所说的, 已经考虑了string复制的各种策略,但现在实现的策略遵循以下方法:垃圾回收器访问String对象时,会注意到char数组。 它取得它们的散列值,并将其与一个对数组的弱引用并列存储。 只要它发现另一个具有相同散列码的string,它们会将它们按字符比较。 如果它们匹配,则会修改一个string并指向第二个string的字符数组。 然后第一个字符数组不再被引用,可以被垃圾收集。 这整个过程当然会带来一些开销,但受到严格的限制。 例如,如果一个string没有被发现重复一段时间,它将不再被检查。 我的第一个问题, 这个话题还没有资源,因为它是最近在Java 8 update 20中添加的,这里有没有人可以分享一些实际的例子来说明如何减lessString在Java中消耗的内存呢? 编辑: 上面的链接说, 只要它发现另一个具有相同散列码的string,它们会将它们按字符比较 我的第二个问题, 如果两个String哈希码相同,那么Strings已经是相同的,那么为什么一旦发现两个String具有相同的哈希码,为什么要比较它们?

如何在Rust中匹配string文字?

我试图弄清楚如何匹配Rust中的一个string。 我最初尝试这样匹配,但我想通过Rust不能隐式地从std::string::String为&str 。 fn main() { let stringthing = String::from("c"); match stringthing { "a" => println!("0"), "b" => println!("1"), "c" => println!("2"), } } 然后我试图构造新的String对象,因为我找不到一个将String转换为&str的函数。 fn main() { let stringthing = String::from("c"); match stringthing { String::from("a") => println!("0"), String::from("b") => println!("1"), String::from("c") => println!("2"), } } 这给了我以下错误3次: error[E0164]: `String::from` does not name a tuple variant […]

从Java中的string中获取第一个字母的最佳方法是什么?返回长度为1的string?

假设如下: String example = "something"; String firstLetter = ""; 是否有差异要注意与以下方式分配可能影响性能的第一个firstLetter ; 这将是最好的,为什么? firstLetter = String.valueOf(example.charAt(0)); firstLetter = Character.toString(example.charAt(0)); firstLetter = example.substring(0, 1); 第一个字母以Stringforms返回的原因是,这是在Hadoop中运行的,并且需要一个string来分配给Texttypes, firstLetter将从map()方法中作为key输出,例如: public class FirstLetterMapper extends Mapper<LongWritable, Text, Text, IntWritable> { String line = new String(); Text firstLetter = new Text(); IntWritable wordLength = new IntWritable(); @Override public void map(LongWritable key, Text value, […]

按值或引用传递std :: string

可能重复: 是传递const std :: string&作为参数的日子吗? 如果支持移动语义,我应该通过值或通过引用传递std::string (未内联函数)? 那么使用小string优化(SSO)的实现呢?

如何比较python中的两个string?

我有两个string string1="abc def ghi" 和 string2="def ghi abc" 如何得到这两个string是相同的没有打破的话?

如何在XAML元素中使用StringFormat?

我深入XAML堆栈的元素绑定到订单。 订单date显示为例如“12/31/2008 12:00:00 AM”。 我希望它显示为例如“31.12.2008”。 我怎样才能做到这一点? 我已经看到其他的stackoverflow问题提到StringFormat,但他们使用multibinding的方式,我无法去工作。 这里是我想要的语法(这是伪代码),只需指定StringFormat,你需要它,这是可能的? <StackPanel> <ListView ItemsSource="{Binding Orders}"> <ListView.View> <GridView> <GridViewColumn Header="Order ID" DisplayMemberBinding="{Binding Path=OrderID}" StringFormat="{}{1:dd.MM.yyyy}"/> <GridViewColumn Header="Order Date" DisplayMemberBinding="{Binding Path=OrderDate}"/> </GridView> </ListView.View> </ListView> </StackPanel>

JavaScript和“和”有什么区别?

我看到这个问题 ,我想知道JavaScript中的相同的东西。 如果在JavaScript中使用string或字符时,应用程序似乎行为相同,那么这两个字符之间有什么区别呢? 我在使用“构buildstring”中看到的唯一优点是我可以做如下的东西: var toAppend = '<div id="myDiv1"></div>'; 代替: var toAppend = "<div id=\"myDiv1\"></div>"; 他们之间有什么重要的区别,我应该知道吗?

如何将逗号分隔的string转换为数组?

有什么办法在Ruby中将逗号分隔的string转换为数组? 例如,如果我有这样一个string: "one,two,three,four" 我将如何将它转换成这样的数组? ["one", "two", "three", "four"]

删除一部分string,但只有当它在string的末尾

我需要删除一个string的子string,但只有当它在string的结束。 例如,删除以下string末尾的“string”: "this is a test string" -> "this is a test " "this string is a test string" – > "this string is a test " "this string is a test" -> "this string is a test" 有任何想法吗 ? 可能某种preg_replace,但如何?