Rövarspråk i Java
Hej! Gjorde en uppgift med rövarspråket i Java för en utbildning.
Dock var de ej nöjda utan ville att man skulle använda .contains.
Får dock inte rätt med det.
Första version som fungerar.
public static void main(String[] args) {
String original = "helt";
String transformed = transformToRobberLang(original);
String toOriginal = karpsravor(transformed);
System.out.println("Rövarspråk: " + transformed);
System.out.println("Avkodat: " + toOriginal);
}
public static String transformToRobberLang(String sentence)
{
String konsonanter1 = "bcdfghjklmnpqrstvwxz"; //Sparar alla konsonanter i en string
char konsonanter[] = konsonanter1.toCharArray(); //Gör om string till char array
int tecken = sentence.length(); //Kollar längd på mening, inkl space
char rovar[] = sentence.toCharArray(); // Gör om meningen till en char array
for(int i = 0; i<tecken; i++) //Går igenom varje tecken i original sträng
{
for(int x = 0; x<20; x++) //Går igenom konsonant-sträng
{
if(rovar[i] == konsonanter[x]) //Om konsonant hittas i original sträng
{
String del = rovar[i]+"o"+rovar[i]; //Dubbla konsonant och lägg till o.
String test = Character.toString(rovar[i]);//omvandlar char till string
sentence = sentence.replaceFirst(test, del); //Ersätter extradel med konsonant
}
}
}
return sentence;
}
public static String karpsravor(String sentence)
{
String konsonanter1 = "bcdfghjklmnpqrstvwxz"; //Sparar alla konsonanter i en string
char konsonanter[] = konsonanter1.toCharArray(); //Gör om string till char array
int tecken = sentence.length();
char rovar[] = sentence.toCharArray(); // Gör om meningen till en char array
for(int i = 0; i<tecken; i++) //Går igenom varje tecken i original sträng
{
for(int x = 0; x<20; x++) //Går igenom konsonant-sträng
{
if(rovar[i] == konsonanter[x]) //Om konsonant hittas i original sträng
{
String del = rovar[i]+"o"+rovar[i]; //Dubbla konsonant och lägg till o.
String test = Character.toString(rovar[i]);//omvandlar char till string
sentence = sentence.replaceFirst(del, test); //Ersätter konsonant med extradel
}
}
}
return sentence;
}
Andra version, har bara testat att omvandla till rövarspråk.
public class RobberLang2 {
public static void main(String[] args) {
String original = "hej";
String transformed = transformToRobberLang(original);
String toOriginal = karpsravor(transformed);
System.out.println("Rövarspråk: " + transformed);
System.out.println("Avkodat: " + toOriginal);
}
public static String transformToRobberLang(String sentence)
{
String konsonanter1 = "bcdfghjklmnpqrstvwxz"; //Sparar alla konsonanter i en string
int tecken = sentence.length(); //Kollar längd på mening, inkl space
for(int i = 0; i<tecken; i++) //Går igenom varje tecken i original sträng
{
if(!konsonanter1.contains(sentence)) { //Om konsonant hittas i original sträng
String del = sentence.charAt(i) + "o" + sentence.charAt(i); //Dubbla konsonant och lägg till o.
String test = Character.toString(sentence.charAt(i));//omvandlar char till string
sentence = sentence.replaceFirst(del, test); //Ersätter konsonant med extradel
System.out.print("Ny del " + del + "\n\n");
}
}
return sentence;
}
public static String karpsravor(String sentence)
{
String konsonanter1 = "bcdfghjklmnpqrstvwxz"; //Sparar alla konsonanter i en string
char konsonanter[] = konsonanter1.toCharArray(); //Gör om string till char array
int tecken = sentence.length();
char rovar[] = sentence.toCharArray(); // Gör om meningen till en char array
for(int i = 0; i<tecken; i++) //Går igenom varje tecken i original sträng
{
for(int x = 0; x<20; x++) //Går igenom konsonant-sträng
{
if(rovar[i] == konsonanter[x]) //Om konsonant hittas i original sträng
{
String del = rovar[i]+"o"+rovar[i]; //Dubbla konsonant och lägg till o.
String test = Character.toString(rovar[i]);//omvandlar char till string
sentence = sentence.replaceFirst(del, test); //Ersätter konsonant med extradel
}
}
}
return sentence;
}
}
Chassi: Fractal Design Define C || Processor: Intel i7-8700K || Grafikkort: ASUS GeForce GTX 1080Ti ROG Strix Gaming || Moderkort: Gigabyte Z370 AORUS ULTRA WIFI || Minne: Corsair Vengeance LPX DDR4 3000MHz 32 Gb || Lagring: Samsung 860 EVO 1TB SSD || PSU: Seasonic Focus+ 850W 85+ GOLD PSU || Skärm:Samsung Odyssey G9 || Windows 10