Hej!
Skulle någon kunna ge mig ett kort exempel på ett en funktion som kollar om en sträng matchar.
Typ:
String a = "-a/+b";
if(match) {
// Gör något om det matchar!
}
6 svar · 365 visningar · startad av Re-JeeP
Hej!
Skulle någon kunna ge mig ett kort exempel på ett en funktion som kollar om en sträng matchar.
Typ:
String a = "-a/+b";
if(match) {
// Gör något om det matchar!
}
Re-JeeP skrev:
Hej!
Skulle någon kunna ge mig ett kort exempel på ett en funktion som kollar om en sträng matchar.
Typ:
String a = "-a/+b";
if(match) {
// Gör något om det matchar!
}
http://java.sun.com/j2se/1.5.0/docs/api/java/util/regex/Pattern.html
Kanske...
Eller är det just strängen "-a/+b" du vill ha hjälp med??
Lime skrev:
http://java.sun.com/j2se/1.5.0/docs/api/java/util/regex/Pattern.html
Kanske...
Eller är det just strängen "-a/+b" du vill ha hjälp med??
Hej!
Jag fick just reda på att det fanns en api. Hittade sidan du gav mig själv och fixade mitt regexp!
När jag ändå har en tråd öppen har jag ett annat problem.
Jag ska via en metod retunera en referens till en klass med ett visst värde i sig.
typ:
class test
{
int private tal;
public test(int a)
{
tal = a;
}
public ...... metod(int b)
{
if(vilkor) {
return test(b);
}
}
}
Jag ska alltså retunera en referens till en klass som har en parameter i sig med värdet b.
Då gör du prexis som du gör för att returnera en atomär eller en String.
alltså om du vill returnera klassen Data som tar en int i sin konstruktor så gör du såhär;
public Data initData(String textual_int)
{
Data result;
if("ett".equals(textual_int))
result = new Data(1);
if("två".equals(textual_int))
result = new Data(2);
if("tre".equals(textual_int))
result = new Data(3);
return result;
}
I java så är det alltid så att det är "pass by value" in i metoder och "return by reference".
Lime skrev:
Då gör du prexis som du gör för att returnera en atomär eller en String.
Vad menas med atomär?
Lime skrev:
alltså om du vill returnera klassen Data som tar en int i sin konstruktor så gör du såhär;
public Data initData(String textual_int) { Data result; if("ett".equals(textual_int)) result = new Data(1); if("två".equals(textual_int)) result = new Data(2); if("tre".equals(textual_int)) result = new Data(3); return result; }
Ahhh!!! Jag glömde new.
Nu funkar det! Lysande... tackar!
Lime skrev:
I java så är det alltid så att det är "pass by value" in i metoder och "return by reference".
Det hängde jag inte med på!
Re-JeeP skrev:
Vad menas med atomär?
Ahhh!!! Jag glömde new.
Nu funkar det! Lysande... tackar!
Det hängde jag inte med på!
När man pratar objektorienterade språk så pratar man ofta om atomärer eller primitiva typer, d.v.s. de inbyggda typerna som man inte använder new för att instansiera. Dessa är i java 8 till antalet:
- boolean
- byte
- char
- short
- int
- long
- float
- double
Alla klasser som finns i Java kan på ett eller annat sätt brytas ner i dessa primitiva typer. T.ex. så är klassen String inte en primitiv utan en klass som kapslar in hanteringen av char-arrayer så att man slipper tänka på hur man gör strängar.
Ta och läs en grundläggande Java-bok eller en tutorial på java.sun.com eller liknande. Det förklarar det mest basala.