molo32
1
for example I have a text that contains 2 lines
1- “1000”, “55”, “123”
2- “hello”, “bye”, “good”
I want a function that does this
foo (“55”)
this would have to find me the string “55” and return what is in the row below, in this case “bye”
How do I do this without using Table?
1 Like
kll
2
please post the code you have so far
( like reading ?file? … store to variables… ? string ? array? )
compare a string pls. use
https://processing.org/reference/String_equals_.html
kll
3
why double post?
i see a problem:
"BANANA, APPLE, GRAPE"
is very different from
“1000”, “55”, “123”
“hello”, “bye”, “good”
and that would make the function you want to write also very different.
so, you have
1 Like
Chrisir
4
Yeah, when you have an array of String (many lines), for loop over it (your y or line number)
Then use split inside the for loop (when each line is like “banana, apple, straw”)
And inside the 1st for loop another for loop to loop over the parts of the line (your x or parts number)
Use .equals()
to check for equality
If you have a match, store y+1 (if smaller than number of lines) and x
And use this
Look up data
When you need to look up data, also see HashMap: https://www.processing.org/reference/HashMap.html
Chrisir
Chrisir
5
example using two arrays
String[]
line1 = { "1000", "55", "123"};
String[]
line2 = { "hello", "bye", "good" };
String search = "55";
// ------------------------------------------------------------------------------------
void setup() {
size(650, 650);
background(0);
int idx = wordIndexSearch(line1, search);
println(idx); // result
if (idx>-1)
text(line2[idx], 111, 111);
}//func
// ---------------------------------------------------------------------------
int wordIndexSearch( String[] words,
String word) {
//search
// index
int idx = 0;
for (String w : words) {
if (word.equals(w)) {
return idx;
}
idx++;
}
// none found
return -1;
}//func
//
1 Like