Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: Java: Miten saa välilyönnit kirjainten väliin?

Simpanssi [11.02.2015 13:52:58]

#

Yksinkertainen kysymys?
Miten merkkijonon esim. nakki saa tulostettua niin, että siitä tulee n a k k i?
Siis mitä metodia siinä käytetään?

Metabolix [11.02.2015 14:43:18]

#

Siinä käytetään esimerkiksi for-silmukkaa, jossa tulostetaan aina yksi merkki merkkijonosta (s.charAt(i)) ja yksi välilyönti.

TapaniS [11.02.2015 15:00:54]

#

Täällä sanottiin, että yhdistely onnistuisi Java 8:lla oheisella tavalla ...

String joined = String.join("/", "2014", "10", "28" ); // "2014/10/28"

List<String> list = Arrays.asList("foo", "bar", "baz");
joined = String.join(";", list); // "foo;bar;baz"

--------------------
Edited: 02/12/2015

Yllä oleva jäi keskeneräiseksi, mutta alla oleva Metabolixin ratkaisu s1 on juuri sellainen, joka oli mielessäni.

String s1 = String.join(" ", s.split(""));

Metabolix [11.02.2015 16:28:23]

#

Vaihtoehtoja toki on:

String s = "nakki";
String s1 = String.join(" ", s.split(""));
String s2 = s.replaceAll("(?<=.)(?=.)", " ");

String s3 = s.substring(0, 1);
for (int i = 1; i < s.length(); ++i) {
	s3 += ' ';
	s3 += s.charAt(i);
}

fergusq [11.02.2015 20:44:13]

#

String s = "nakki";
String t = s.chars().mapToObj(i -> (char) i + "").collect(Collectors.joining(" "));
System.out.println(t);

Simpanssi [12.02.2015 08:57:36]

#

 public static void main(String[] args) {

	String arvo = "Java";
	for (int i = 0; i < arvo.length(); i++) {
	    char tulos = arvo.charAt(i);
	    System.out.print(tulos + " ");
	}
    }

Tein sen näin thx:)

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta